Professional Documents
Culture Documents
Transceiver (NA5TR1)
User Guide
Version 2.00
NA-06-0230-0385-2.00
This document contains information on a pre-engineering chip.
Specifications and information herein are subject to change without notice.
Document Information
nanoLOC TRX Transceiver (NA5TR1) User Guide
Document Information
Document Title:
Document Version:
2.00
Published (yyyy-mm-dd):
2008-06-06
Current Printing:
2008-6-6, 12:46 pm
Document ID:
NA-06-0230-0385-2.00
Document Status:
Released
Disclaimer
Nanotron Technologies GmbH believes the information contained herein is correct and accurate at the time of release. Nanotron
Technologies GmbH reserves the right to make changes without further notice to the product to improve reliability, function or
design. Nanotron Technologies GmbH does not assume any liability or responsibility arising out of this product, as well as any
application or circuits described herein, neither does it convey any license under its patent rights.
As far as possible, significant changes to product specifications and functionality will be provided in product specific Errata
sheets, or in new versions of this document. Customers are encouraged to check the Nanotron website for the most recent
updates on products.
Trademarks
nanoNET is a registered trademark of Nanotron Technologies GmbH. All other trademarks, registered trademarks, and product
names are the sole property of their respective owners.
This document and the information contained herein is the subject of copyright and intellectual property rights under international
convention. All rights reserved. No part of this document may be reproduced, stored in a retrieval system, or transmitted in any
form by any means, electronic, mechanical or optical, in whole or in part, without the prior written permission of Nanotron
Technologies GmbH.
Copyright 2008 Nanotron Technologies GmbH.
Page ii NA-06-0230-0385-2.00
notices instruct you to do so. In aircraft, use of any radio frequency devices must be in accordance with applicable regulations. Hospitals or health care facilities may be using
equipment that is sensitive to external RF energy.
With medical devices, maintain a minimum separation of 15
cm (6 inches) between pacemakers and wireless devices and
some wireless radios may interfere with some hearing aids. If
other personal medical devices are being used in the vicinity
of wireless devices, ensure that the device has been adequately shielded from RF energy. In a domestic environment
this product may cause radio interference in which case the
user may be required to take adequate measures.
CAUTION! Electrostatic Sensitive Device. Precaution should be used when handling the
device in order to prevent permanent damage.
reasonable protection against harmful interference in a residential installation and against harmful interference when the
equipment is operated in a commercial environment.
This equipment generates, uses, and can radiate radio frequency energy and, if not installed and used in accordance
with the instructions as provided in the user manual, may
cause harmful interference to radio communications. However, there is no guarantee that interference will not occur in a
particular installation. Operation of this equipment in a residential area is likely to cause harmful interference in which
case the user will be required to correct the interference at his
or her own expense.
If this equipment does cause harmful interference to radio or
television reception, which can be determined by turning the
equipment off and on, the user is encouraged to try to correct
the interference by one or more of the following measures:
Contents Overview
nanoLOC TRX Transceiver (NA5TR1) User Guide
Contents Overview
Contents Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .iii
Table of Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xiii
List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
1 How To Use This User Guide. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Section One: nanoLOC Chip Programming Guide
2 Key Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3 nanoLOC Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4 Digital and Analog IO Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5 nanoLOC Clocking Structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
6 Power Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
7 nanoLOC Programming Interface (SPI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
8 nanoLOC Memory Map. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
9 Chirp Sequencer (CSQ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
10 nanoLOC Packet and MACFrames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
11 Frame Control Scheme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
12 MACFrame Configuration (Auto/Transparent) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
13 Baseband RAM Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
14 Buffer Configuration (Simplex/Duplex). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
15 Buffer Swapping Between TX and RX Buffers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
16 Buffer Control Timing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
17 Buffer Access Synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
18 Bit Processing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
19 Chirp Modulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
20 Local Oscillator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
21 RF Transmitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
22 Media Access Control Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
23 Data Transmission Control Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
24 Address Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Section Two: Registers and Baseband RAM Descriptions
25 Memory Map of Chip Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
26 Chip Registers 0x00 to 0x7F . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
27 Memory Map of Baseband RAM Locations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
28 Baseband RAM Locations: 0x80 to 0x3FF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Section Three: Appendices
A1 Attributes and Constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
A2 Chip Registers Default Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
About Nanotron Technologies GmbH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
Contents Overview
nanoLOC TRX Transceiver (NA5TR1) User Guide
Page iv NA-06-0230-0385-2.00
Table of Contents
nanoLOC TRX Transceiver (NA5TR1) User Guide
Table of Contents
List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xiii
List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
1 How To Use This User Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Chapter Descriptions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Typographic Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3 Chip Register and Baseband RAM Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.1 Register and Baseband RAM Diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.2 Registers and Register Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.3 Field Description Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.4 Field Properties Column . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.5 True / False Field Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.6 Setting the Value of Reserved Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
2
3
3
3
4
4
4
4
7
7
7
7
8
8
3 nanoLOC Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.1 Analog Part - TX and RX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.2 Digital Part - Programming Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.2.1 Digital Part ON Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2.2 Digital Part PWD Section. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3 Signal Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4 Digital and Analog IO Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.1
4.2
4.3
4.4
4.5
Pinning Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input and/or Output Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuring the Digital IO Pins D0 to D3 (Pins 19 to 22) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuring the IRQ Pin CIRQ (pin 27) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Power On Reset /POnReset (Pin 30). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
11
12
13
14
15
15
16
16
17
18
19
20
21
21
6 Power Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
6.1
6.2
6.3
6.4
6.5
6.6
23
23
24
24
25
26
NA-06-0230-0385-2.00 Page v
Table of Contents
nanoLOC TRX Transceiver (NA5TR1) User Guide
6.7
6.8
6.9
6.10
PowerUp State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Standby State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ready State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Powering Off the Chip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
28
28
28
29
29
30
30
30
31
31
31
31
31
32
32
32
32
33
34
35
35
35
35
36
36
37
40
40
41
41
42
43
43
43
43
Page vi NA-06-0230-0385-2.00
Table of Contents
nanoLOC TRX Transceiver (NA5TR1) User Guide
57
57
57
58
59
59
59
60
60
60
67
67
67
67
67
68
69
69
70
70
70
Table of Contents
nanoLOC TRX Transceiver (NA5TR1) User Guide
75
75
76
76
76
77
19 Chirp Modulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
19.1 Chirp Spread Spectrum (CSS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
19.2 2-ary Modulation Systems. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
19.2.1 Upchirp/Downchirp Modulation System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
19.2.2 Upchirp/Off Modulation System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
19.2.3 Downchirp/Off Modulation System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
19.2.4 Physical Channels and the On-Off Keying Modulation Systems . . . . . . . . . . . . . . . . . . . . 80
20 Local Oscillator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
20.1 Purpose of the Local Oscillator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
20.2 Calibrating the Local Oscillator Frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
20.2.1 Fields for Updating the Local Oscillator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
21 RF Transmitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
21.1 Adjusting the Baseband Filter Frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21.2 Setting the Power Amplifier Bias Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21.3 Adjusting the Transmitter Output Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21.3.1 Output Power Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21.3.2 Fields for Adjusting the RF Transmitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83
84
84
84
85
87
87
87
87
88
89
90
91
92
93
93
94
94
94
95
96
97
97
Symbols Definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Error Correction (ARQ scheme) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Retransmit Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Fragmentation Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Unconfirmed Data Transmission. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Table of Contents
nanoLOC TRX Transceiver (NA5TR1) User Guide
NA-06-0230-0385-2.00 Page ix
Table of Contents
nanoLOC TRX Transceiver (NA5TR1) User Guide
26.53
26.54
26.55
26.56
26.57
26.58
26.59
26.60
26.61
26.62
26.63
26.64
26.65
26.66
26.67
26.68
26.69
26.70
26.71
26.72
26.73
26.74
26.75
26.76
26.77
26.78
26.79
26.80
26.81
26.82
26.83
26.84
26.85
26.86
26.87
26.88
26.89
26.90
26.91
26.92
26.93
26.94
Page x NA-06-0230-0385-2.00
Table of Contents
nanoLOC TRX Transceiver (NA5TR1) User Guide
27.4
NA-06-0230-0385-2.00 Page xi
Table of Contents
nanoLOC TRX Transceiver (NA5TR1) User Guide
List of Tables
nanoLOC TRX Transceiver (NA5TR1) User Guide
List of Tables
Table 1: Document conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Table 2: Chip registers and fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Table 3: Field description tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Table 4: Field properties column . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Table 5: True/False settings examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Table 6: Digital input pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Table 7: Digital I/O pin configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Table 8: Digital I/O pin write strobe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Table 9: Digital I/O pin status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Table 10: IRQ pin configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Table 11: Interrupts driving the IRQ pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Table 12: RTC and TimeB packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Table 13: RTC and TimeB packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Table 14: Wake-up time fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Table 15: Baseband clock related fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Table 16: Chirp sequencer clock related fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Table 17: Power management states . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Table 18: Power management related fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Table 19: PowerDownModeFull state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Table 20: PowerDownModePad state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Table 21: PowerUp state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Table 22: Fields for setting a wake-up event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Table 23: Bit order fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Table 24: SPI TxD Output driver field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Table 25: SPI bus timing values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Table 26: nanoLOC memory map section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Table 27: Memory address access example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Table 28: Selecting a Correlator RAM page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Table 29: Selecting a Correlator RAM page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Table 30: 2ary packet format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Table 31: nanoLOC defined packet types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Table 32: Wake-up time fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Table 33: Baseband RAM configuration modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Table 34: Baseband memory usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Table 35: Auto / Duplex mode configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Table 36: Auto / Simplex mode configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Table 37: Transparent / Duplex mode configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Table 38: Transparent / Simplex mode configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Table 39: Wake-up time fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Table 40: Wake-up time fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Table 41: Receive flags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Table 42: Transmit flags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Table 43: Receive Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Table 44: Transmit Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Table 45: Value for fTarget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Table 46: RTC and TimeB packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Table 47: Setting PA bias current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
2008 Nanotron Technologies GmbH.
List of Tables
nanoLOC TRX Transceiver (NA5TR1) User Guide
List of Figures
nanoLOC TRX Transceiver (NA5TR1) User Guide
List of Figures
Figure 1: nanoLOC analog and digital parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Figure 2: ON and PWD sections of the digital part . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Figure 3: Signal flow in the nanoLOC chip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Figure 4: nanoLOC chip (NA5TR1) pin assignment (top view) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Figure 5: /POnReset timing diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Figure 6: nanoLOC clock structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Figure 7: 32.786 kHz Real Time Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Figure 8: Using Real Time Clock as wake-up event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Figure 9: SPI Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Figure 10: 32 MHz baseband clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Figure 11: Switching on/off the Baseband clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Figure 12: Chirp Sequencer clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Figure 13: Power Management Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Figure 14: Power management state model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Figure 15: PowerDownModeFull showing powered sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Figure 16: PowerDownModePad showing powered sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Figure 17: PowerUp state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Figure 18: Standby state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Figure 19: Ready state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Figure 20: nanoLOC SPI Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Figure 21: Four-wire option of the SPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Figure 22: Three-wire option of the SPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Figure 23: Multiple slave connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Figure 24: Read timing of the SPI bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Figure 25: Write timing of the SPI bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Figure 26: SPI transfer format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Figure 27: Read Access (LSB first) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Figure 28: Write access (LSB first) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Figure 29: Write access example memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Figure 30: nanoLOC memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Figure 31: First SPI access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Figure 32: DeviceSelect and RamIndex on first SPI write transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Figure 33: Second SPI access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Figure 34: SPI address on the second SPI access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Figure 35: Accessing a baseband RAM location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Figure 36: Register mapping in the 1024 byte nanoLOC chip memory space . . . . . . . . . . . . . . . . . . . . . . 42
Figure 37: Programming and Usage of the Chirp Sequencer RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Figure 38: Chirp Sequencer programming interface format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Figure 39: General packet format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Figure 40: Preamble field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Figure 41: SyncWord field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Figure 42: MACFrame field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Figure 43: FrameControl field used for Network Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Figure 44: MACFrame format of Data packet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Figure 45: MACFrame format of an Ack packet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Figure 46: MACFrame format of a Brdcast packet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Figure 47: MACFrame format of TimeB packet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2008 Nanotron Technologies GmbH.
NA-06-0230-0385-2.00 Page xv
List of Figures
nanoLOC TRX Transceiver (NA5TR1) User Guide
1.1
Chapter Descriptions
Overview
1. How To Use This User Guide on page 1 - this chapter.
Programming Guide
2. Key Features on page 7 describes the additional features and improvements of this version of
the nanoLOC chip.
3. nanoLOC Architecture on page 9 provides a summary of the analog and digital parts of the
nanoLOC chip.
4. Digital and Analog IO Pins on page 11 describes the digital and analog IO pins of the nanoLOC
chip.
5. nanoLOC Clocking Structure on page 15 describes the four clocks provided by the nanoLOC
chip: 32.768 kHz clock, SPI clock, 32 MHz baseband clock, and the Chirp Sequencer (CSQ)
clock.
6. Power Management on page 23 describes the five power management states of the nanoLOC
chip.
7. nanoLOC Programming Interface (SPI) on page 29 describes the programming interface (SPI)
to the nanoLOC chip.
8. nanoLOC Memory Map on page 39 describes the Register Block and RAM memory spaces,
including Baseband RAM, Chirp Sequencer RAM, and Correlator RAM.
9. Chirp Sequencer (CSQ) on page 45 describes in more detail the Chirp Sequencer RAM (CSQ),
including how to program it, if required. Normally the CSQ is pre-programmed.
10. nanoLOC Packet and MACFrames on page 49 describes the general packet formats and
packet types sent and received by nanoLOC chips.
11. Frame Control Scheme on page 57 describes a frame control scheme that can be implemented
in software. This scheme use the FrameControl field of the MACFrame, which is transparent to
the nanoLOC chip.
12. MACFrame Configuration (Auto/Transparent) on page 59 explains how to configure the MACFrame in Auto and Transparent mode.
13. Baseband RAM Configuration on page 61 describes the four possible configurations of the
baseband RAM using the TX/RX buffer and MACFrame modes, which are Auto/Duplex, Auto/
Simplex, Transparent/Duplex, and Transparent/Simplex.
14. Buffer Configuration (Simplex/Duplex) on page 67 describes how to configure the TX and RX
buffers in Duplex and Simplex mode.
15. Buffer Swapping Between TX and RX Buffers on page 69 discusses the buffer swap feature of
the nanoLOC chip, which exchanges the buffers between the baseband transmitter and
receiver.
16. Buffer Control Timing on page 71 describes the control timing for transmit and receive buffers.
17. Buffer Access Synchronization on page 73 describes the flags and commands used for buffer
access synchronization.
18. Bit Processing on page 75 describes the methods used in the nanoLOC chip for bit error detection, forward error correction, bit scrambling, retransmission, and encryption.
NA-06-0230-0385-2.00 Page 1
19. Chirp Modulation on page 79 describes nanoLOCs modulation technique, Chirp Spread Spectrum (CSS), which was developed by Nanotron.
20. Local Oscillator on page 81 describes how to calibrate the Local Oscillator frequency.
21. RF Transmitter on page 83 describes the adjustment of the RCOSC/Leapfrog filter frequency,
the power amplifier bias current, and the output power of the transmitter.
22. Media Access Control Methods on page 87 describes various media access methods, including Direct Access (DA), Random Access (CSMA/CA), and TDMA.
23. Data Transmission Control Methods on page 99 describes methods used in the nanoLOC chip
to correct received data packets, filter out retransmissions, control message fragments, and
manage unconfirmed data transmissions.
24. Address Formats on page 103 describes MAC address formats used in the nanoLOC chip as
well addressing and message types.
Register Description
25. Memory Map of Chip Register on page 107 provides a map of all user-programmable chip registers in the nanoLOC chip.
26. Chip Registers 0x00 to 0x7F on page 117 provides a description of all user-programmable chip
registers in the nanoLOC chip.
27. Memory Map of Baseband RAM Locations on page 245 provides a map of all Baseband RAM
locations.
28. Baseband RAM Locations: 0x80 to 0x3FF on page 251 provides a description of all Baseband
RAM locations.
Appendices
Appendix 1: Attributes and Constants on page 289 lists the attributes and constants referred to in
this document.
Appendix 2: Chip Registers Default Settings on page 291 lists the default settings of all user-programmable chip registers.
1.2
Typographic Conventions
The following table describes the typographical conventions used in this document.
Table 1: Document conventions
Convention
Description
Italics
Product names, trademarks, cross references, and document titles, and first
occurrences of a special term, as well as variables in equations.
Courier
Computer input, file names, signals, registers, and register field names in In
Programming Guide section only. In Register description tables, field names
use standard Arial font.
SMALL CAPS
Note
Warning
Page 2 NA-06-0230-0385-2.00
Alerts you that failure to take or avoid a specific action might result in physical
harm to you and/or damage or destroy the hardware. A warning icon is placed
in the margin.
1.3
Bit number
MSB
Offset
RW
Bit Number
LSB
LoIntsEn
Internal
Use Only
Reserved
field must
be set to 0
Initial value
of user programmable
field
Internal use
field must be
set to 0
R
init
0x15
W
init
Register address
Register fields are identified by shading as either Programmable, Reserved, or Internal Use Only:
+
Programmable fields (white cells) are displayed with their initial values:
LoIntsEn
0
Field name
Initial field value
Must be set to 0
Item
Description
Register
nanoLOC uses programmable eight bit offset digital Registers. Setting the chip may involve
only a single register or a group of registers.
Field
A chip register Field is either a bit within a register or a group of bits within one or more consecutive registers that have a unique purpose. Each field has a unique identifier and has
specific properties.
NA-06-0230-0385-2.00 Page 3
Bits
Mnemonic
Prop
LoIntsEn
WO
Description
ENABLE LOCAL OSCILLATOR INTERRUPT
Purpose: Enables the different LO interrupt sources to
control the combined LoIrqStatus.
Convention
Description
RW
brst
This field supports SPI burst access and can be a located within a block that is read from or
written to in a burst.
strb
This field supports a strobe function where only a single write access is required for generating a command or action. The value True must be written to the location only once.
BbClk
SPI
Examples of hexidecimal, decimal, and binary values are shown in the following table:
Table 5: True/False settings examples
Value
Example
Hexidecimal value
0xABCD
Decimal value
1234
Binary value
0B1101
Key Features
nanoLOC TRX Transceiver (NA5TR1) User Guide
2 Key Features
The nanoLOC (NA5TR1) chip incorporates the robust wireless communication capabilities of the
nanoNET (NA1TR8) chip but with significant new features and improvements, including:
2.1
2.2
2.3
Note: For more details, see 19. Chirp Modulation on page 79.
2.4
Symbol rates include: 2 Mbps, 1 Mbps, 0.5 Mbps and 0.25 Mbps
Note: See 26.65. 0x48 Symbol Duration, Symbol Rate, and Modulation System on page 202.
2008 Nanotron Technologies GmbH.
NA-06-0230-0385-2.00 Page 7
2
2.5
Key Features
nanoLOC TRX Transceiver (NA5TR1) User Guide
2.6
Programmable Pull-Resistors
The nanoLOC chip uses programmable pull-resistors to lower the cost of the bill of materials. The
following pads can now be set as either pull-up or pull-down:
+
TxRx (pin 9)
Page 8 NA-06-0230-0385-2.00
nanoLOC Architecture
nanoLOC TRX Transceiver (NA5TR1) User Guide
3 nanoLOC Architecture
The nanoLOC chip is a extremely low power, highly integrated mixed signal chip incorporating both
an analog and a digital part in one silicon die. This section provides a brief overview of the digital
and analog parts of the chip. The flow of data within the chip is shown below.
Application data
sent and received
over SPI interface
Digital
Analog
Packets sent and
received over an
RF Link
3.1
3.2
ON
PWD
Analog
Always powered
Digital
NA-06-0230-0385-2.00 Page 9
nanoLOC Architecture
nanoLOC TRX Transceiver (NA5TR1) User Guide
3.2.1
The ON section, which is always powered, contains the minimum number of required controls that
are used to maintain the chip settings. It also is connected to the digital I/O pins as these pins are
used for power management.
3.2.2
The PWD section, which is powered up only during operating mode, contains the remaining controls that are used when the chip is required for data transmission and reception.
3.3
Signal Flow
The signal flow within the chip can be illustrated as follows:
PINS
ON
PWD
PINS
Only powered when
chip is in
operating mode
PINS
Analog
Always powered
Application
data sent
and
received
over SPI
interface
Packets
sent and
received
over an RF
Link
Page 10 NA-06-0230-0385-2.00
4.1
Pinning Diagram
nc
nc
VSSA
VSSA
RxN
RxP
VSSA
TxN
TxP
VSSA
VDDA
GND
Exposed die
attach pad
VBalun
48 47 46 45 44 43 42 41 40 39 38 37
Pin 1 Identification
VDDA
36
VDDA
RRfef
35
VDDA
VSSA
34
VSSA
33
nc
32
VDDA_ADC
31
VSSD
VDDA_DCO
Xtal32kP
nanoLOC TRX
NA5TR1
4
5
Xtal32kN
Xtal32MP
30
/POnReset
Xtal32MN
29
CVcc
28
VDD1V2_Cap
VSSD
10
27
CIRQ
VSSD
11
26
CReset
12
25
VSSD
Tx/Rx
VDDD
VDDD
VSSD
D3
D2
D1
D0
SpiRxD
SpiTxD
/SpiSsn
SpiClk
VSSD
VDDD
13 14 15 16 17 18 19 20 21 22 23 24
4.2
Table 6 below describes the digital pins and analog pins of the nanoLOC chip:
NA-06-0230-0385-2.00 Page 11
Pin
Pin #
Direction
Description
Analog pin. 32.768 kHz crystal oscillator pin 1 or
input for an external 32.768 kHz clock generator.
Used to connect crystal or active frequency reference.
Xtal32kP
Input
Xtal32kN
Output
Xtal32MP
Input
Xtal32MN
Output
/POnReset
30
Input
Input
SpiClk
15
/SpiSSn
16
Input
SpiRxD
18
Input
SpiTxD
17
Output
Tx/Rx
Output
CReset
26
Output
CIRQ
27
Output
D0
19
Input/Output
D1
20
Input/Output
D2
21
Input/Output
D3
22
Input/Output
Digital Input or Output (programmable, see configuration bits below), line 3. Note that a 32.768 kHz
clock operates on this pin after reset/power up.
CVcc
29
Output
Note: For a complete pin description, see the nanoLOC (NA5TR1) TRX Transceiver Datasheet.
4.3
Field
DioDirection
Page 12 NA-06-0230-0385-2.00
Offset
Read/
Write
0x04
WO
Description
Controls the direction of Digital IO port. Set it
as either an input or an output pin.
Offset
Read/
Write
DioOutValueAlarmEnable
0x04
WO
DioAlarmStart
0x04
WO
Field
Description
DioAlarmPolarity
0x04
WO
DioUsePullup
0x04
WO
When set to true, a pull-up resistor is connected to the corresponding digital IO pad.
DioUsePulldown
0x04
WO
When set to true, a pull-down resistor is connected to the corresponding digital IO pad
only, but when DioUsePullup is false.
Each digital IO pin has one write strobe, as listed in table 8 below.
Table 8: Digital I/O pin write strobe
Field
DioPortWe
Offset
Read/
Write
0x04
WO
Description
Writes the settings of the 6 configuration bits to
the digital IO controller.
Each digital IO pin has one status bit, as listed in table 9 below.
Table 9: Digital I/O pin status
Field
DioInValueAlarmStatus
4.4
Offset
0x04
Read/
Write
RO
Description
Each bit reports the signal level or the occurrence of an alarm at one of the four digital IO
ports, where bit 0 belongs to D0, bit 1 belongs
to D1, bit 2 belongs to D2, and bit 3 belongs to
D3.
Field
IrqPolarity
(high/low active)
Offset
Read/
Write
0x00
RW
Default
Defines the polarity of the IRQ signal as either
high or low active. The default is low active.
NA-06-0230-0385-2.00 Page 13
Field
IrqDriver
(pushpull/opendrain)
Offset
Read/
Write
0x00
RW
Default
Switches between push-pull or open-drain for
IRQ output driver. The default is open-drain.
The following fields are used to drive the interrupt of the IRQ pin by either a transmitter interrupt, a
receiver interrupt, a baseband timer interrupt, or a local oscillator interrupt:
Table 11: Interrupts driving the IRQ pin
Offset
Read/
Write
TxIrqEnable
0x0F
RW
RxIrqEnable
0x0F
RW
BbTimerIrqEnable
0x0F
RW
LoIrqEnable
0x0F
RW
Field
4.5
Description
tdelay
5 s
400 s
Threshold
levels
Start of
internal reset
Low # VDDD * 0.2
Stop
IC Ready
Time
Figure 5: /POnReset timing diagram
Page 14 NA-06-0230-0385-2.00
5.1
Overview
The nanoLOC chip provides the following four clocks:
32.786 kHz clock Used to run the Real Time Clock and Power Management.
SPI clock Used for the SPI Controller and for the Digital IO Control used for running the
four digital IO pins. The frequency of the SPI clock is dependent on the frequency required
by the microcontroller. The maximum frequency is 27 MHz.
32 MHz baseband clock Used for baseband control, radio control, and other baseband
uses. The frequency of the baseband clock for the nanoLOC chip is 32 MHz and can be
enabled or disabled by software.
CSQ (Chirp Sequencer) Clock Used by the Chirp Sequencer (CSQ) Memory. The frequency of the CSQ clock is determined by dividing the Local Oscillator (LO) frequency by
10. The CSQ clock can be enabled or disabled by software.
ON
D[3:0]
CReset
CVcc
PWD
Digital IO Control
Radio Control
Real Time Clock
Baseband Control
Others
Tx/Rx
Cirq
Power Management
(4 kHz)
Protection
CSQ Memory
DDDL Memory
SPI
SPI Controller
5.2
NA-06-0230-0385-2.00 Page 15
ON
D[3:0]
CReset
CVcc
PWD
Tx/Rx
CIRQ
Protection
SPI
5.2.1
The 48 bit Real Time Clock is set and read through software. Since the Real Time Clock is updated
every 1/(32.768 kHz), it is not directly accessible by the user. A RAM buffer RamRtcReg is used to
hold the value of the internal Real time Clock after it has been read. This buffer is also used to hold
a value that will be written to the Real Time Clock.
Fields for Updating RTC by Software
The following fields are used for updating the Real Time Clock with software.
Table 12: RTC and TimeB packets
Offset
Read/
Write
RtcCmdWr
0x62
WO
RtcCmdRd
0x62
WO
RamRtcReg
0xF0
RW
48 bit RTC value read from the RTC by software or written to the RTC by software
Field
Description
Write a 48 bit value for the Real Time Clock to the buffer RamRtcReg.
Write this buffer to the Real Time Clock using the write command RtcCmdWr.
Read the Real Time Clock using the read command RtcCmdRd to place the 48 bit value of the
Real Time Clock in the buffer RamRtcReg.
5.2.2
The Real Time Clock can also be updated from TimeB packets that have been sent from a base
station or other stations in a network. This updating can be performed automatically or manually.
If the updating is performed automatically, then when a TimeB packet is received, the RTC value in
the packet is automatically written to the Real Time Clock.
Page 16 NA-06-0230-0385-2.00
If the updating is performed manually, then when a TimeB packet is received, the RTC value in the
packet must be manually updated as described in 5.2.1. Updating and Reading the RTC Through
Software on page 16.
Fields for Updating RTC by TimeB Packets
The following fields are used for updating the Real Time Clock by TimeB packets.
Table 13: RTC and TimeB packets
Offset
Read/
Write
RtcTimeBAutoMode
0x62
WO
RtcTimeBRxAdj
0x61
WO
RtcTimeBTxAdj
0x60
WO
RamRtcTx
0xE0
RW
RamRtcRx
0xE8
RW
Field
Description
5.2.3
The Real Time Clock can be used to create a wake-up time event at a predefined time. The field
EnableWakeUpRtc enables the Real Time Clock to be used as a wake-up event.
The RTC wake-up time is set in RtcWakeUpTime but can only be accessed through the use of
WakeUpTimeByte and WakeUpTimeWe.
The wake-up time is a 24 bit value split into 3 bytes. The field WakeUpTimeByte is used to set
each of the three segments of the wake-up time (the segment to write is selected using the a byteselector field WakeUpTimeWe). This wake-up time value is then compared to bits 31 to 8 of the
Real Time Clock. When these values match, a wake-up event is then triggered. This process is
shown in figure 8 below.
2008 Nanotron Technologies GmbH.
NA-06-0230-0385-2.00 Page 17
47
31
23
RtcWakeUpTime
(RTC)
WakeUptime
WakeUptimeByteWe
WakeUptimeByte
Offset
Read/
Write
WakeUpTimeByte
0x01
WO
WakeUpTimeWe
0x02
WO
EnableWakeUpRtc
0x06
RW
Field
5.3
Description
SPI Clock
The SPI Clock is an externally delivered clock provided to the chip through an SPI signal from a
master device, such as a microcontroller. The frequency of the SPI clock is dependent on the frequency of the master device. The maximum frequency of the SPI clock, however, is 27 MHz. It is
provided as one of the four signals of the SPI interface: SpiClk.
Figure 9 below shows the Digital IO Control and DDDL Memory modules as well as the SPI Controller that use the SPI clock.
D[3:0]
ON
PWD
Digital IO Control
CReset
CVcc
Tx/Rx
CIRQ
DDDL Memory
SPI
SPI Controller
SPI Clock:
Page 18 NA-06-0230-0385-2.00
This clock is used to run the SPI Controller. As the Digital IO Control is run by the SPI Controller,
the SPI Clock is also used to run the four digital IO pins: D0, D1, D2, D3. It also runs all registers
that are written by the SPI Controller. In the Register Description tables, this is indicated in the
properties column of the register description (see 1.3.4. Field Properties Column on page 4).
5.4
D[3:0]
ON
PWD
Radio Control
CReset
CVcc
Baseband Control
Others
Tx/Rx
CIRQ
SPI
Offset
Read/
Write
ResetBbClockGate
0x07
RW
ResetBbRadioCtrl
0x07
RW
EnableBbCrystal
0x08
RW
EnableBbClock
0x08
RW
Field
Description
NA-06-0230-0385-2.00 Page 19
Internal power
supply bus
Step 2: ResetBbClockGate
1
Step 3: EnableBbCrystal
Xtal32MP
Step 1: EnableBbClock
Crystal
Oscillator
32 MHz
RST
RST
D
Enable
Xtal32MN
Clock
gate
Clock
IC boundary
Baseband
clock
Set ResetBbClockGate = True to enable active reset of the baseband clock circuitry.
Set EnableBbCrystal = False to power off the internal baseband quartz oscillator.
5.5
Set ResetBbClockGate = False to inactivate the reset of the baseband clock circuitry.
PWD
D[3:0]
CReset
CVcc
CSQ Memory
Tx/Rx
CIRQ
SPI
Page 20 NA-06-0230-0385-2.00
Field
EnableCsqClock
5.5.1
Offset
Read/
Write
0x42
RW
Description
Enables the Chirp Sequencer (CSQ) clock.
5.5.2
Set CsqUseRam = 0.
Note: 0 is the default value of CsqUseRam.
NA-06-0230-0385-2.00 Page 21
Page 22 NA-06-0230-0385-2.00
Power Management
nanoLOC TRX Transceiver (NA5TR1) User Guide
6 Power Management
This section describes the five power management states of the nanoLOC chip, which are
PwrDownModeFull, PwrDownModePad, PowerUp, Standby, and Ready.
The nanoLOC chip has been designed to efficiently use the power required to operate the chip.
Modules required during transmission and reception, such as the baseband memory, CSQ memory, the SPI Controller, and other modules are located in a section of the chip that can be powered
down when not in use. To keep the chip operational, the minimum required modules are located in
a section of the chip that uses minimal power to maintain a connection with the microcontroller.
6.1
State
Current
Consumptiona
PwrDownModeFull
under 2.5 A
PwrDownModePad
# 600 A
PowerUp
# 700 A
StandBy
# 2.5 mA
Ready
# 4 mA
n./a.
6.2
Digital IO Control
CReset
CVcc
PWD
Radio Control
Baseband Control
Others
Tx/Rx
CIRQ
Power Management
(4 kHz)
Protection
CSQ Memory
DDDL Memory
SPI Controller
SPI
Figure 13: Power Management Module
The Power Management module is responsible for maintaining the pull-up and pull-down states of
the SPI interface during all power down modes. This includes the pins: SpiClk, SpiSSn, SpiRxD,
and SpiTxD. This module is also responsible for maintaining the pull-up and pull-down states of
several additional input/output pins, including:
+
/POnReset, an input pin which provides a signal to the power up reset line.
NA-06-0230-0385-2.00 Page 23
Power Management
nanoLOC TRX Transceiver (NA5TR1) User Guide
The Digital IO pins are always powered as they can be programmed to provide a wake-up event to
bring the PWD section back to powered up state.
6.3
Receive Mode
Transmit Mode
TX-INIT
RX-INIT
TX RF-INIT
Station-INIT
RX RF-INIT
Calibrate-TX
Ready Mode
Calibrate-RX
Internal baseband
clock distribution on
Internal baseband
clock distribution off
Standby Mode
Baseband quartz
clock on
Configuration of
Wake Up Timers or
of alarm Events
Baseband quartz
clock off
Configuration of
Wake Up Timers or
of alarm Events
Powerup Mode
Wake-up timer
or alarm events
Powerdown
FULL Mode
Wake-up timer
or alarm events
Powerdown
PAD Mode
6.4
Field
Offset
Description
EnableWakeUpRtc
0x06
RTC wake-up event brings the chip into the power up state.
EnableWakeUpDio
0x06
PowerUpTime
0x06
PowerDownMode
0x06
Selects the power down mode to use when the chip enters the powered
down state
PowerDown
0x07
Brings the chip to the configured power-down state. This bit will be
automatically cleared when the chip is powered-up.
Page 24 NA-06-0230-0385-2.00
Power Management
nanoLOC TRX Transceiver (NA5TR1) User Guide
6.5
PowerDownModeFull State
When the chip is in PowerDownModeFull, it consumes less power but after power up the chip will
need to be reconfigured. The pins and registers of the chip are powered off but reconfiguration of
the registers is required after wake-up. Also leakage current is the lowest possible in this mode.
ON
D[3:0]
Digital IO Control
CReset
CVcc
PWD
Radio Control
Baseband Control
Others
Power Management
(4 kHz)
Tx/Rx
CIRQ
Protection
CSQ Memory
DDDL Memory
SPI Controller
SPI
Powered =
Figure 15: PowerDownModeFull showing powered sections
Module
State
Powered down
PWD section
ON section
Powered
Running
Wake-up timer
Running
Digital IO Control
Running
Running
Set PowerDown = 1
Bringing to PowerUp State: Either an internal wake-up timer or an external event on a Digital IO
pin brings the chip out of PowerDownModeFull into PowerUp state. This activation time is programmable using the field PowerUpTime in a range between 1 and 32 ms + boot time of the external microcontroller. After the chip is in PowerUp mode, the external microcontroller can then
initialize and (optionally) calibrate the chip.
1. Current consumption values are typical values only and are values without an external microcontroller
and where digital IO pads are tri-state or inputs and no external pull-up resistors soldered on pads.
2008 Nanotron Technologies GmbH.
NA-06-0230-0385-2.00 Page 25
6
6.6
Power Management
nanoLOC TRX Transceiver (NA5TR1) User Guide
PowerDownModePad State
When the chip is in PowerDownModePad, it consumes more power than PowerDownModeFull but
after it has been powered up, it does not need to be reconfigured. In this state, all output pads are
disabled and all bi-directional pads are switched to input, but all transceiver registers are still powered. Reconfiguration of the chip registers is not required, but leakage current is higher.
ON
D[3:0]
Digital IO Control
CReset
CVcc
PWD
Radio Control
Baseband Control
Others
Power Management
(4 kHz)
Tx/Rx
CIRQ
Protection
CSQ Memory
DDDL Memory
SPI Controller
SPI
Powered =
Figure 16: PowerDownModePad showing powered sections
Current Consumption: The current consumption during PowerDownModePad state is approximately 600 A.
Chip State: The chip is in the following state during PowerDownModePad:
Table 20: PowerDownModePad state
Module
State
Powered down
PWD section
ON section
Powered
Running
Wake-up timer
Running
Digital IO Control
Running
Running
Set PowerDown = 1
Bringing to PowerUp State: Either an internal wake-up timer or an external event on a Digital IO
pin brings the chip out of PowerDownModePad. The chip then goes into PowerUp state. The activation time is programmable using the field PowerUpTime in a range between 1 and 32 ms + boot
time of the external microcontroller. After the chip is set in Ready state, the external microcontroller
can then initialize and calibrate the chip.
Page 26 NA-06-0230-0385-2.00
Power Management
nanoLOC TRX Transceiver (NA5TR1) User Guide
6.7
PowerUp State
The chip enters PowerUp state from either PowerDownModeFull or PowerDownModePad through
on of the following: internal wake-up timer, external event on a Digital IO pin, or an external reset
ON
PWD
D[3:0]
Digital IO Control
CReset
CVcc
Radio Control
Baseband Control
Others
Power Management
(4 kHz)
Tx/Rx
CIRQ
Protection
CSQ Memory
DDDL Memory
SPI Controller
SPI
Powered =
Figure 17: PowerUp state
Current Consumption: The current consumption during Powerup state is approximately 700 A.
Chip State: When the chip is brought to PowerUp state, the following occurs:
Table 21: PowerUp state
Module
State
Powered
All output pins are enabled and digital IO pins are switched
to bi-directional
Running
Bringing to Standby State: When the chip is brought from PowerUp state into Standby state, all
blocks are powered up except the baseband distribution, which remains switched off. The activation time to bring the chip into Standby state from PowerUp state is approximately 5 ms, depending
on the speed of the baseband quartz oscillator.
Wake-Up Sources for PowerUp State: The chip is brought to PowerUp state by a wake-up
source. This is either a RTC wake-up event or an alarm event (a rising or falling edge) at one of the
digital IOs configured as a wake-up source. Table 22 lists the fields used to set a wake-up event.
Table 22: Fields for setting a wake-up event
Field
Offset
Description
EnableWakeUpRtc
0x06
EnableWakeUpDio
0x06
NA-06-0230-0385-2.00 Page 27
6
6.8
Power Management
nanoLOC TRX Transceiver (NA5TR1) User Guide
Standby State
When the chip is In Standby state, only the baseband clock distribution is switched off. All other
blocks of the chip are fully powered.
ON
D[3:0]
Digital IO Control
CReset
CVcc
PWD
Radio Control
Baseband Control
Others
Tx/Rx
CIRQ
Power Management
(4 kHz)
Protection
CSQ Memory
DDDL Memory
SPI Controller
SPI
Powered =
Figure 18: Standby state
Current Consumption: The current consumption during Standby state is approximately 2.5 mA.
Bringing to Ready State: To bring the chip into Ready state, the baseband clock distribution is
switched on. Activation time to bring the chip into Standby mode from PowerUp mode is 6 s @
4 Mbit/s SPI (without reconfiguration).
6.9
Ready State
When the chip is In Ready State, the baseband clock distribution is switched on and the microcontroller can immediately initiate a packet transmission or reception.
ON
D[3:0]
PWD
Digital IO Control
Radio Control
CReset
CVcc
Baseband Control
Others
Pamp
Cirq
Power Management
(4 kHz)
Protection
CSQ Memory
DDDL Memory
SPI Controller
SPI
Powered =
Figure 19: Ready state
Current Consumption: The current consumption during Ready Mode is approximately 4 mA.
6.10
Page 28 NA-06-0230-0385-2.00
7.1
SPI Controller
All SPI requests are distributed through the SPI Controller, whether in the PWD section or the ON
section of the nanoLOC chip. In particular, the SPI Controller, which uses the SPI clock, directs SPI
requests to the appropriate registers. All registers written by the SPI Controller are run with SPI
clock, with the exception of Read Only registers.
Note: SPI requests are only possible when the PWD section of the chip is powered, as the SPI
Controller is located in this section. See 7.1.1. SPI Controller and Power Management on
page 29.
Figure 20 below shows the flow of SPI requests in the PWD and On sections of the nanoLOC chip.
ON
D[3:0]
Digital IO Control
PWD
Radio Control
Baseband Control
Others
Power Management
(4 kHz)
Protection
SPI Controller
SPI
SPI Requests
Figure 20: nanoLOC SPI Controller
7.1.1
PowerdownModeFull: When the chip is in PowerdownModeFull state the PWD section is completely powered down to reduce chip power consumption, which means all register settings are
lost. However, the ON section retains a small amount of power to save specific chip settings
related to the Digital IO pins, the Real Time Clock, and Power Management. Also, the connections
between a microcontroller and the SPI Controller is protected to enable the chip to quickly wake-up
and to be fully operational in a very short time.
PowerDownModePad: When the chip is in PowerDownModePad state, the PWD section remains
powered, which means all register settings are maintained.
PowerUp: When the chip is in PowerUp state, the connection between the microcontroller and the
SPI Controller over the SPI bus is quickly reestablished. Then, depending on what power down
state was set, the microcontroller then initializes the registers in the PWD section and (optionally)
calibrates the Local Oscillator frequency.
2008 Nanotron Technologies GmbH.
NA-06-0230-0385-2.00 Page 29
7.1.2
The SPI Controller contains a mirror of the registers in the ON part. This is done to save power as
less connections are maintained between the ON and PWD parts, especially for those registers
relating to Digital IO control.
The SPI Controller also include those registers that must be accessible when the baseband clock
is off, including:
7.2
Pad controls For example, registers for the SPI direction (MSB/LSB).
Clock controls For example, registers for enabling for baseband clock.
Constants For example, registers for the chip version and revision number.
The default bit order after reset or power-up is LSB first. Table 23 below lists the field used to set
the SPI bit order.
Table 23: Bit order fields
Field
Offset
0x00
Description
Sets the bit order for the SPI bus. Default is LSB.
7.3
Page 30 NA-06-0230-0385-2.00
7.4
SpiTxDriver = 0
Push-Pull: The pad is driven in push-pull mode, but only when data is sent from the nanoLOC chip
to the SPI master. Otherwise, the output is in high-impedance state. Do the following to set the SPI
TxD output driver to push-pull:
+
SpiTxDriver = 1
Field
Offset
SpiTxDriver
7.5
0x00
Description
Switches between push-pull and open-drain for the TxD output driver
(SpiTxD - pin 17).
7.6
Parameter
Minimum
Maximum
Description
fmax
27 MHz
tLC
18.5 ns
tHC
18.5 ns
tSS
4 ns
/SpiSsn Setup
tHS
2 ns
/SpiSsn Hold
tSRxD
4 ns
SpiRxD Setup
tHRxD
2 ns
SpiRxD Hold
tPDTxD
18.5 ns
tHTxD
2.5 ns
tPTxDZ
18.5 ns
SpiClk
The maximum transfer rate for communication between the microcontroller (the master device)
and the nanoLOC chip (the slave device) is 27 MBit/s.
7.6.2
For each SPI transfer, between 3 and 130 bytes (1-128 data bytes) can be sent per transfer.
2008 Nanotron Technologies GmbH.
NA-06-0230-0385-2.00 Page 31
7
7.7
7.7.1
Four-Wire Configuration
Four-wire configuration is the standard configuration between the nanoLOC chip (slave) and a
microcontroller (master). It requires all four lines of the SPI interface, as illustrated in figure 21.
CLK
TxD
Microcontroller
(Master)
RxD
SpiClk
MOSI
SpiRxD
MISO
SpiTxD
/CS1 (SSN)
nanoLOC
(Slave)
/SpiSSn
7.7.2
Three-Wire Configuration
If only a single nanoLOC chip (slave) is connected to the microcontroller (master), then the SpiSSn
input pin can be connected to GND, as illustrated in figure 22.
CLK
TxD
Microcontroller
(Master)
RxD
SpiClk
MOSI
SpiRxD
MISO
SpiTxD
nanoLOC
(Slave)
/SpiSSn
This configuration saves one pin on the SPI master device or makes the pin available for other
functions. This saves space on a circuit board, which is significant since many applications using
the nanoLOC chip require a small form factor. Also, if the SpiSSn pin is driven with an active-low
voltage level permanently, the power consumption of the nanoLOC chip is not increased.
7.7.3
If multiple slave devices (for example, multiple nanoLOC chips) are controlled by a single master
device, the /SpiSSn pin of each slave device is connected to the SSN pin on the master device.
pull-up resistor
SpiClk
CLK
TxD
RxD
/CS1 SSN0
MOSI
MISO
SpiRxD
SpiTxD
nanoLOC
(Slave 1)
/SpiSSn
...
Microcontroller
(Master)
Clk
RxD
Slave n
TxD
/CS
/CSn SSN1
Page 32 NA-06-0230-0385-2.00
7.8
After receiving the last address bit, the nanoLOC chip begins to switch the data bits to SpiTxD.
The output starts driving with the first read data bit.
The timing of the SpiRxD pin that is used for length and address during read is identical to the
timing of the SpiRxD pin that is used during writing.
SpiClk
tLC
Address phase
tHC
...
/SpiSsn
tSS
tHS
tSRxD
SpiRxD = SpiMOSI
Address
bit 5
Address
bit 6
...
Address
bit 7
tHD
SpiTxD = SpiMISO
HiZ
Bit 0
...
N-1
tPDTXD
Legend
HiZ
tHTxD
High
High impedance
Low
Data bit
Dont care
NA-06-0230-0385-2.00 Page 33
7
7.9
On the first falling edge of the clock signal (SpiClk), with the master device SPI slave select (/
SpiSsn) being low, the first data bit is switched (sent) to SpiRxD.
As long as /SpiSsn is activated, the nanoLOC chip latches one data bit onto each rising edge
of the clock signal (SpiClk).
If several slave devices share the SPI bus, then the master device must control the communication with slave-dedicated chip selects (/SpiSsn(n)).
To complete an operation to a specific SPI slave, the /SpiSsn signal must be set to high after
the last data bit has been transmitted.
31 ns
tHC
SpiClk
...
/SpiSsn
tSS
SpiRxD
tHS
...
tSRxD
...
Bit 0
Bit N
tHRxD
tHD
Legend
High
High impedance
Low
Data bit
Dont care
Page 34 NA-06-0230-0385-2.00
7.10
Length
RW
Start Address
Byte 2: <Address>
Byte N: 3 <N byte data> 130
Data
Figure 26: SPI transfer format
7.10.1
Byte 1: Instruction
The <Instruction> field has a fixed length of one byte and contains the command type
(read[0] / write[1]) as well as the number of data bytes:
MSB
LSB
Direction Bit
Bit 7 is the direction bit and is used to differentiate between read or write access, where:
+
Write access = 1
Read access = 0
Bits 0 to 6 provides the data byte size. This is the size of data that will be sequentially written to
the nanoLOC chip or read from the nanoLOC chip in an access operation. The maximum
length is 128 bytes, which is indicated by a 0x00 value.
7.10.2
Byte 2: Address
The <Address> field has a fixed length of one byte and contains the first address to be accessed.
Additional data bytes are accessed at the addresses that follow the address provided here.
MSB
7
LSB
6
Address Byte
If the data payload is greater than one, the interface is used in burst mode with automatic address
increment.
7.10.3
The <Data Payload> field has a size (N) and can vary from one byte to 128 bytes. It contains the
data that is to be written to or read from the target register(s).
MSB
7
LSB
6
Data Payload
...
Data Payload
NA-06-0230-0385-2.00 Page 35
7
7.11
In the <Instruction> field, set the direction bit to the value 0 (read data) and set the data
size, where the maximum size is 128.
7
Length
SpiRxD
7
ADDR
0
Data 0
SpiTxD
...
Data 1
/SpiSsn
Legend
High
High impedance
Data bit
Low
Dont care
Note: The SpiTxD pin is activated into push-pull or open-drain mode only if the data payload
bytes are transmitted and if the slave device is selected through SpiSsn. Otherwise, the
SpiTxD pin is always in the high impedance state.
7.12
In the <Instruction> field, set the direction bit to the value 1 (write data) and set the data
size, where the maximum size is 128.
In the <Data Payload> field, set the data that will be written to the slave device(s).
Send the <Instruction>, <Address>, and <Data Payload> data to the slave device(s).
7
Length
7
ADDR
7
Data 0
Data 1
...
/SpiSsn
Legend
High
High impedance
Low
Data bit
Dont care
Note: During a write operation the SpiTxD pin is always in the high impedance state.
Page 36 NA-06-0230-0385-2.00
7.12.1
The following shows a write access example where three bytes (0x11, 0x22 and 0x33) are written
to three registers that start at the address location 0x23:
<0x83><0x23><0x11><0x22><0x33>
Instruction
field
Address
field
Data payload
field
Instruction field: First, the chip needs to know if this request is a read or write command, and how
many bytes of data will be written to the register(s). In this example, the <Instruction> field has
a value of <0x83>, which has a binary value of 10000011, as shown below:
MSB
LSB
Write
Access
Number of Bytes = 3
The bit direction is set to write with three bytes of data to follow that are to be written.
Address field: Next, the chip needs to know to where in the register these three bytes of data are
to be written (that is, which offset address to point to). In this example, the <Address> field has a
value of <0x23>, which has a binary value of 00100011, as shown below:
MSB
LSB
The data bytes are be written beginning at the offset address 0x23.
N data fields (3 bytes): Finally, include the data to be written beginning at the offset address 0x23.
In this example, the <Data Payload> field has the values 0x11, 0x22, and 0x33, which have the
binary values 00010001, 00100010, and 00110011, respectively, as shown in the following diagram:
MSB
LSB
The three values 00010001, 00100010, and 00110011 will be written to the chip registers beginning at offset address 0x23, that is offset addresses 0x23, 0x24, and 0x25.
Figure 29 below shows the location of the three registers in the chip register where the data provided has been written.
2008 Nanotron Technologies GmbH.
NA-06-0230-0385-2.00 Page 37
256 bytes
0xFF
...
Start Address
0x25
00110011
0x24
00100010
0x23
00010001
...
0x00
Figure 29: Write access example memory map
Page 38 NA-06-0230-0385-2.00
Address
Memory
Type
Page Select
Register
Select
11-10
9-8
Hex FFF
Bits 6-0
Register Block
Register Block
Register Block
Register Block
Register Block
Register Block
Register Block
Register Block
Baseband Page 3
Register Block
Baseband Page 2
Register Block
Baseband Page 1
Register Block
Baseband Page 0
Register Block
Correlator RAM
11
10
11
01
00
Hex C00
Hex BFF
Chirp Sequencer
11
10
10
01
00
Unused
Hex 800
Hex 7FF
Hex 400
01
Hex 3FF
Baseband RAM
11
10
00
01
00
Hex 000
Hex Value
Memory Type
0x000 to 0x3FF
Baseband RAM
0x800 to 0xBFF
Chirp Sequencer
RAM
Description
NA-06-0230-0385-2.00 Page 39
Hex Value
Memory Type
Description
0xC00 to 0xFFF
Correlator RAM
0x000 to 0x07F
Register Block
Note: For a description of the Chirp Sequencer, see 9. Chirp Sequencer (CSQ) on page 45. The
Correlator RAM is described in 8.3. Correlator RAM Access on page 43. The Register Block
is described in 8.2. 128 Byte Programmable Register Block on page 42.
8.1
8.1.1
On the first SPI access, the four upper address bits are accessed, as shown in figure 31 below.
Address
Hex address
Hex address
Device
Select
Ram Index
Register
Select
11-10
9-8
Bits 6-0
RAM Location
Register Block
This first SPI write transfer is divided into the following two parts:
1
Select page:
One of the four pages in the selected memory type is chosen by setting the address bits 9 and
8, which is the field RamIndex.
DeviceSelect and RamIndex are shown in a 12 bit SPI access in figure 32 below.
DeviceSelect
RamIndex
11
10
Memory type
Page select
Note: See Register 26.16. 0x0E Baseband Memory Access on page 139
Page 40 NA-06-0230-0385-2.00
8.1.2
On the second SPI access, which can be either a read or a write access, selects either a RAM
location or the Register Block, as shown in figure the lower 8 bits of the address are accessed.
Device
Select
Ram Index
Register
Select
11-10
9-8
Address
Hex address
Hex address
Bits 6-0
RAM Location
Register Block
The second SPI access is divided into the following two parts:
1
Select an address:
A RAM location or a Register address is chosen by setting a 7 bit (bits 6 to 0) offset address.
The SPI address, including the BBRAM select bit and the 7 bit offset address is shown in figure 34
below.
SPI address
11
10
BBRAM select
Note: The Register Block is described later in 8.2. 128 Byte Programmable Register Block on
page 42.
8.1.3
Field
Bits
Setting
10-11
00
9-8
00
Address Location
6-0
0111110
DeviceSelect
RamIndex
Description
NA-06-0230-0385-2.00 Page 41
Set SPI Address[7] = 1 to indicate that the address is in a baseband RAM location.
Figure 35 shows an SPI write transfer to address the memory location at offset 0xBE,
DeviceSelect
SPI address
RamIndex
11
10
Memory type
Page select
BBRAM select
Note: For more on the SPI protocol format, see 7.10. SPI Address Format on page 35.
8.2
These three mapped registers are logically equivalent to the register memory locations 0x00 to
0x7F. Figure 36 below illustrates this mapping.
0x3FF
128 bytes
Baseband RAM 3
0x380
0x37F
Page 3
128 bytes
Register
0x300
0x2FF
128 bytes
Baseband RAM 2
0280
0x27F
Page 2
128 bytes
Register
0x200
0x1FF
128 bytes
Baseband RAM 1
0x180
0x17F
Page 1
128 bytes
Register
0x100
0x0FF
128 bytes
Baseband RAM 0
0x080
0x7F
Page 0
128 bytes
Register
Register block
0x00
Figure 36: Register mapping in the 1024 byte nanoLOC chip memory space
Note: All user accessible registers in this register block is fully described in 26. Chip Registers
0x00 to 0x7F on page 117.
Page 42 NA-06-0230-0385-2.00
8.2.1
To access a memory location in the register only one SPI transfer is required, where.
+
SPI Address[7] = 0
Either an SPI single byte operation or an SPI burst transfer can be used to access chip memory.
The lower 7 bits of a given memory location are identical with the start address in the selected segment. SPI burst transfers are limited to 128 bytes (which is the segment size).
Note: A wraparound SPI burst transfer leads to unpredictable behavior. A wraparound SPI burst is
when the number of bytes to be accessed is greater than the number of bytes from the start
address to the end of the segment.
8.2.2
When bit 7 of the 10 bit memory address is 1, the RamIndex field must be set with the two highest
bits of this address (shifting right by 8 positions). The lower 8 bits are directly used in the next SPI
access, which writes this data.
To reduce the overhead caused by writing the RamIndex field for each memory access, it is recommended that an RamIndex shadow variable be maintained in software. This variable can be
used to back up the last value of the RamIndex field. If address locations in the same segment are
accessed sequentially, write operations to the RamIndex field can be eliminated by comparing the
RamIndex value with the shadow variable.
8.3
DeviceSelect Setting
DeviceSelect = 0x3
8.4
RAMIndex Setting
RamIndex = 0x0
(default value)
I (RamD3IPatI)
RamIndex = 0x1
Q (RamD3IPatQ)
RamIndex = 0x2
Thresholds (RamD3IThresholds)
RamIndex = 0x3
Unused
NA-06-0230-0385-2.00 Page 43
A Chirp Sequencer RAM page is selected by setting DeviceSelect and RamIndex as shown in
28 below:
Table 29: Selecting a Correlator RAM page
DeviceSelect Setting
DeviceSelect = 0x2
RAMIndex Setting
RamIndex = 0x0
(default value)
Column 0
RamIndex = 0x1
Column 1
RamIndex = 0x2
Column 2
RamIndex = 0x3
Unused
Note: For more details about the Chirp Sequencer, see 9. Chirp Sequencer (CSQ) on page 45.
Page 44 NA-06-0230-0385-2.00
9.1
The Chirp Sequencer table is programmable and must be initialized over the SPI interface by an
initialization routine when the default matrix is not used. The use of a 6 bit value for each row in the
table can cause additional overhead because 8 bit values are used in the SPI protocol and memory usually consist of bytes. Therefore, to avoid additional time for data transactions and unnecessary increased code size, the Chirp Sequencer memory is equipped with an 8 bit programming
interface.
Three columns of 8 bits each are used for programming the CSQ, while four columns of 6 bits each
are used by the nanoLOC chip to calculate the Upchirps and Downchirps. Figure 37 below illustrates these columns.
Programming
17
11
I Value 0
23
I Value 1
Column 0: RamIndex = 0
Column 1: RamIndex = 1
Column 2: RamIndex = 2
Q Value 0
15
Q Value 1
23
Usage
On this programming interface, the Chirp Sequencer memory is translated into a table containing
three columns of 8 bits each with each column having 61 rows (see Figure 38 below).
2008 Nanotron Technologies GmbH.
NA-06-0230-0385-2.00 Page 45
Q121
I121
Q120
I120
Q119
Q121
Q120
I121
I120
Q119
61
Q7
Q5
Q3
Q1
8 bit
Q7
I7
Q6
I6
Q5
I5
Q4
I4
Q6
Q4
I7
I6
Q3
I3
I5
I4
Q2
I2
Q2
Q0
I3
I2
Q1
I1
I1
I0
Q0
I0
8 bit
8 bit
6 bit
122
6 bit
I/Q-Sequence-Format
Byte 2
Byte 1
Byte 0
Usually the I and Q sequences are given in two lists of 6 bit values. Before the data from both lists
can be written into the Chirp Sequencer memory, they must be formatted for the 8 bit programming
interface. This can be done prior to the compilation because the I and Q sequences are not commonly changed during the lifetime a software version.
9.2
Read in 122 elements of both lists (I and Q) into two separate arrays (I and Q array).
Shift the second I-value 6 bits to the left, while discarding the upper 4 bits and merge it with the
first I-value to an 8 bit value.
Write this 8 bit value to the first row of the least significant column (byte 0) of the two dimensional array.
Proceed this way (repeat steps 3 to 5) with the next I-values until the I-array is exhausted and
the byte-0-column is filled up.
Get the second I-value from the I-array and the first Q-value from the Q-array.
Shift the second I-value 2 bits to the right, while discarding the lower 2 bits, shift the first Qvalue 4 bits to the left, while discarding the higher 2 bits and merge both to an 8 bit value.
Write this 8 bit value to the first row of the middle column (byte 1) of the two dimensional array.
10 Proceed this way (repeat steps 7 to 9) with the next odd I-value and the next even Q-value until
both arrays are exhausted and the byte-1-column is filled up.
11 Get the first and second Q-value from the Q-array.
12 Shift the first Q-value 4 bits to the right while discarding the lower 4 bits, and then shift the second Q-value 2 bits to the left and merge both to an 8 bit value.
13 Write this 8 bit value to the first row of the most significant column (byte 2) of the two dimensional array.
14 Proceed this way (repeat steps 11 to 13) with the next Q-values until the Q-array is exhausted
and the byte-2-column is filled up.
Page 46 NA-06-0230-0385-2.00
9.3
=
=
=
=
:
11.1111b
10.0111b
10.1000b
10.0001b
Means operation or
= 0011.1111b
= 0011.1111b
I1
I2 << 6 = 0010.0111b << 6 = 1100.0000b +
-------------------------------------------row[0]column[0]
= 1111.1111b
8. I2 >> 2 = 0010.0111b >> 2 = 0000.1001b
Q1 << 4 = 0010.1000b << 4 = 1000.0000b +
-------------------------------------------row[0]column[1]
= 1000.1000b
12. Q1 >> 4 = 0010.1000b >> 4 = 0000.0010b
Q2 << 2 = 0010.0001b << 2 = 1000.0100b +
-------------------------------------------row[0]column[2]
= 1000.0110b
4.
NA-06-0230-0385-2.00 Page 47
Page 48 NA-06-0230-0385-2.00
10
10.1
Preamble
Tail
MACFrame
MSB
LSB
Figure 39: General packet format
Note: All bits in the fields are transmitted with the LSB first.
The bit and symbol size of each of these fields are described below for the 2ary modulation system, which is one bit per symbol.
Table 30: 2ary packet format
10.2
Field
Bits
Symbols
Preamble
30
30
SyncWord
64
64
MACFrame
80 to 114,996
80 to 114,996
Tail
Packet Type
10.3
Name
Description
Data
Data
Acknowledgement
Ack
Broadcast
Brdcast
Give specific information to either all stations in range (a broadcast message) or only a group of stations in range (a multicast message).
Time Beacon
TimeB
Request to Send
Req2S
Clear to Send
Clr2S
Preamble Field
The Preamble field is a fixed-length sequence of length MacPreambleSymbols (30) symbols in
the 2ary modulation system and is used to facilitate AGC calibration and bit synchronization.
Preamble
SyncWord
MACFrame
Tail
30 symbols
Figure 40: Preamble field
NA-06-0230-0385-2.00 Page 49
10
The sequences of symbols in the Preamble should use following modulation system:
+
10.4
SyncWord Field
The SyncWord entity is a 64 bit code word derived from a 24-bit logical network ID (LNID) and is
used for frame synchronization.
SyncWord
Preamble
Tail
MACFrame
64 bits
Figure 41: SyncWord field
Different SyncWords can be used to facilitate frame synchronization on packets from different stations, networks, or logical channels. They are based on a (64,30) expurgated block code with the
PN-overlay 0x03848D96BBCC54FC to get good auto correlation properties. A Hamming distance
of 14 is guaranteed between SyncWords based on different LNIDs to allow frame synchronization
with the presence of bit errors.
The following steps describe how the SyncWord is generated:
10.5
The information sequence is generated by appending 6 bits to the 24 bit LNID. If the MSB of
the LNID equals the value 0, then the appended bits are 010101. If the MSB of the LNID is the
value 1, then the appended bits are 101010.
The information sequence is pre-scrambled by XORing it with the bits 34 to 63 of the pseudorandom noise (PN) sequence (0x03848D96BBCC54FC).
The parity bits are created through polynomial division of the information sequence by the generator polynomial 260534236651 (in octal notation). Parity bits are the rest of the division.
MACFrame Field
The contents of the MACFrame field defines the packet type. The size of the MACFrame can
range from 80 bits for an Ack packet to 114,996 bits for a Data packet using FEC. The MACFrame
field can consist of up to 10 fields depending on the packet type, as shown below.
SyncWord
Preamble
Tail
MACFrame
80 bit to 114,996 bits
1
bit
ScInit
Crypt
Type
Code
Address1
Address2
Length
7 bits
4 bits
4 bits
48 bits
48 bits
13 bits
Frame CRC1
Control
3 bits
Data
CRC2
2 bits
= undefined
1 bit
Packet header = 144 bits
Page 50 NA-06-0230-0385-2.00
10
with the initial value of the scrambler since this value is not known at
the receiver. This value can be changed for every packet.
The receiver uses the ScramblerInit value for descrambling the MACFrame. Scrambling is performed over all fields of the MACFrame
(except the ScramblerInit field) to randomize the data using highly
redundant patterns so that the probability of large zero patterns is
minimized.
Crypt (EncryptionControl)
TypeCode
Address1
Address2
Length
The Length field is 13 bits in length and specifies the number of bytes
of the Data field. It exists only in the Data, Brdcast, TimeB, Req2S and
Clr2S packet types.
All bits set to 0 indicate a Data field of 8192 bytes. The maximum
Length value allowed in a subset of this specification is defined by the
MacDataLengthMax attribute. A station receiving a MACFrame with a
value greater than the MacDataLengthMax (Data packet) or the
MacBrdCastLengthMax (Brdcast packet) discards the packet without
indication to the sender or to the LLC.
Note: MacDataLengthMax and MacBrdCastLengthMax are defined in
Appendix 1: Attributes and Constants on page 289.
FrameControl
NA-06-0230-0385-2.00 Page 51
10
Frame
Control
3 bits
FragC SeqN
1 bit
1 bit
LCh
1 bit
CRC1
Data
The Data field is a variable length field that contains the data for the
logical channels. It exists only in the Data and Brdcast packets. The
Length field specifies the length in bytes of the Data field.
The minimum length is one byte. The maximum length is defined by
the MacDataLengthMax and MacBrdcastLengthMax attributes, which
is 8192 bytes.
Note: MacDataLengthMax and MacBrdCastLengthMax are defined in
Appendix 1: Attributes and Constants on page 289.
CRC2
10.5.1
The CRC2 field is 16 or 32 bits in length and performs a cyclic redundancy check on the Data field of Data and Brdcast packets. Different
polynomials of 16 or 32 bit lengths are defined and can be selected.
The MACFrame of a Data packet contains up to 8192 data bytes. A Data packet MACFrame is
shown below.
1
bit
ScInit
Crypt
Type
Code
Address1
Address2
Length
7 bits
4 bits
4 bits
48 bits
48 bits
13 bits
Frame CRC1
Control
3 bits
Data
CRC2
16 bits (1MacDataLengthMax) * 8 16 or
bits
32 bits
= undefined
Figure 44: MACFrame format of Data packet
The following fields have information that is specific to the Data packet:
TypeCode
Address1
Address2
Length
FrameControl
These bits are transparent to the nanoLOC chip. They are used in
nanoLOC Ranging Application Software, as follows:
Table 1: Ranging Data Packets
Page 52 NA-06-0230-0385-2.00
Value
0x00
Ranging_Start Packet
0x01
10
Value
Ranging_Answer1 Packet
0x02
Ranging_Answer2 Packet
0x03
Ranging_Fast_Start Packet
0x04
Ranging_Fast_Answer1
0x05
The maximum length of the Data field used in an implementation subset of this specification is defined by the MacDataLengthMax attribute.
If messages with more than MacDataLengthMax bytes have to be
transmitted, they can be fragmented into several Data packets of different lengths. If a Data packet is received with more than MACDataLenghtMax bytes, it is discarded without indication to the sender or to
the LLC.
Note: MacDataLengthMax is defined in Appendix 1: Attributes and
Constants on page 289.
10.5.2
An Ack packet is sent by the receiver to acknowledge the successful reception of a Data packet.
The MACFrame of an Ack packet is shown below.
1
bit
ScInit
0x0
Type
Code
Address1
CRC1
7 bits
4 bits
4 bits
48 bits
16 bits
= undefined
Figure 45: MACFrame format of an Ack packet
The following fields have information that is specific to the Ack packet:
TypeCode
Address1
10.5.3
A Brdcast packet is sent by a station to give specific information to either all stations in range (a
broadcast message) or only a group of stations in range (a multicast message). The MACFrame of
a Brdcast packet is shown below.
1
bit
ScInit
Crypt
Type
Code
Address1
Address2
Length
7 bits
4 bits
4 bits
48 bits
48 bits
13 bits
= undefined
Frame CRC1
Control
3 bits
Data
CRC2
The following fields have information that is specific to the Brdcast packet:
FrameControl
Since a Brdcast packet is sent as a broadcast to more than one station, it must not be acknowledged by any station receiving the packet.
Because of the lack of retransmission possibilities for Brdcast packets
(unacknowledged transmission) fragmentation is impossible. Therefore, the FragC and SeqN bits must be set to the value 0.
Data
The maximum length of the Data field used in a implementation subset of this specification is defined by MacBrdCastLengthMax attribute.
NA-06-0230-0385-2.00 Page 53
10
If a Brdcast packet is received with more than MACBrdCastLengthMax bytes, it will be discarded without indication to the LLC.
Note: MacBrdCastLengthMax is defined in Appendix 1: Attributes and
Constants on page 289.
TypeCode
Address1
Address2
Length
10.5.4
A TimeB packet is sent by a station to give all stations within range time information. This packet
allows synchronization of the Real Time Clocks of stations. Since the time beacon is sent as a
broadcast to more than one station, it must not be acknowledged by any station receiving it. A
TimeB packet MACFrame is shown below.
ScInit
Crypt
Type
Code
Address1
Address2
Length
7 bits
4 bits
4 bits
48 bits
48 bits
13 bits
1
bit
Frame CRC1
Control
Data
CRC2
3 bits
= undefined
The following fields have information that is specific to the TimeB packet:
Address1
Address2
Data
The Data field of the TimeB packet can be used to transmit a signature to authenticate the RTCvalue and the source address of the
TimeB packet or to broadcast specific information.
TypeCode
Length
FrameControl
10.5.5
The Req2S packet requests a frame transmission and reserves bandwidth by a station. The
requested station responds with a Clear to Send packet (Clr2S) to the requesting station. A Req2S
packet MACFrame is shown below.
1
bit
ScInit
0x0
Type
Code
Address1
Address2
Length
7 bits
4 bits
4 bits
48 bits
48 bits
13 bits
Frame- CRC1
Control
3 bits
16 bits
= undefined
Figure 48: MACFrame format of Req2S packet
Page 54 NA-06-0230-0385-2.00
10
The following fields have information that is specific to the Req2S packet:
Length
The Length field indicates the length of the Data packet (in bytes) of
the requested transmission.
TypeCode
Address1
Address2
FrameControl
10.5.6
The Clr2S packet confirms a requested frame transmission of a station through a Req2S packet,
indicating that a Data packet can be transmitted. The Addess2 and Length fields are copied from
the Req2S packet and sent back to the requesting station. A Clr2S packet MACFrame is shown
below.
1
bit
ScInit
0x0
Type
Code
Address1
Length
0b000
CRC1
7 bits
4 bits
4 bits
48 bits
13 bits
3 bits
16 bits
= undefined
Figure 49: MACFrame format of Clr2S packet
The following fields have information that is specific to the Clr2s packet:
10.6
TypeCode
Address1
Length
FrameControl
Tail Field
The Tail field is used as a delimiter between the end of a packet. Tail symbols are required in onoff-keying systems for the physical carrier sensing mechanism. For instance, consecutive off-symbols at the end of a packet and the following interframe space interval could be misinterpreted by
stations trying to access the media as a physically idle medium.
Preamble
SyncWord
Tail
MACFrame
MACTailSymbols
Figure 50: Tail field
The Tail is a fixed-length sequence of MacTailSymbols (4) bits defined below for the modulation
systems:
+
NA-06-0230-0385-2.00 Page 55
10
Page 56 NA-06-0230-0385-2.00
11
11.1
Logical Channels
The Link Control Manger should be implemented in the Data Link Layer. The following describes
the settings of the LCh bit in the FrameControl field which selects between the Link Control Channel and the User Data Channel.
11.1.1
The LCh bit is used to distinguish between the two logical channels (LCCh and UDCh). A value 0
indicates the user data channel (UDCh) while a value 1 indicates the link control channel (LCCh).
The Link Control Channel (LCCh) carries control information that is exchanged between the Link
Control Managers (LCM) of two stations. The LCCh is indicated by the Logical Channel bit (LCh)
set to the value 1 in the FrameControl field of Data or Brdcast packets.
1
bit
ScInit
Crypt
Type
Code
Address1
Address2
Length
Frame
Control
7 bits
4 bits
4 bits
48 bits
48 bits
13 bits
3 bits
FragC
SeqN
LCh = 1
1 bit
1 bit
1 bit
CRC1
Data
CRC2
= undefined
Information exchanged between two stations via the Link Control Channel is shown below.
Station one
Station two
LCCh
DLL
Physical
Layer (PHY)
-01 Transceiver
Chip
Physical
Layer (PHY)
-01 Transceiver
Chip
Note: For more details, see 11.2. Link Control Management on page 58.
11.1.2
The User Data Channel (UDCh) carries user data that is exchanged between the Data Link Controls (DLC) of two stations. The UDCh channel is indicated by the Logical Channel bit (LCh) set to
the value 0 in the FrameControl field of Data or Broadcast packets.
2008 Nanotron Technologies GmbH.
NA-06-0230-0385-2.00 Page 57
11
1
bit
ScInit
Crypt
Type
Code
Address1
Address2
Length
Frame
Control
7 bits
4 bits
4 bits
48 bits
48 bits
13 bits
3 bits
FragC
SeqN
LCh = 0
1 bit
1 bit
1 bit
CRC1
Data
CRC2
= undefined
Information exchanged between two stations via the User Data Channel is shown below.
DLL Data
DLL Data
Station one
Station two
Data Link Layer
DLL
UDCh
Physical
Layer (PHY)
-01 Transceiver
Chip
Physical
Layer (PHY)
-01 Transceiver
Chip
11.2
Page 58 NA-06-0230-0385-2.00
12
12.1
Overview
A transmitted or received packet contains a Preamble, a SyncWord, the MACFrame, and a Tail,
which are used by the nanoLOC chip to help process the received packet. The MACFrame, however, contains the raw data which is used by upper layers.
SyncWord
Preamble
Tail
MACFrame
= undefined
ScInit
Crypt
Type
Code
Address1
Address2
Length
Frame CRC1
Control
Data
CRC2
The nanoLOC TRX Transceiver provides a wide range of features that can be automatically set in
the MACFrame as it is prepared for transmission, or read out when a MACFrame is received.
These include Forward Error Correction, Encryption, Address Matching, and so on. However, the
chip provides the option of allowing software to configure the MACFrame. These two modes are
Auto Mode and Transparent Mode:
12.2
In Auto mode, for TX, the MACFrame is configured by automatically by hardware (the
nanoLOC chip) using data provided in chip register settings and buffers, while for RX, the hardware (the nanoLOC chip) parses the received MACFrame and stores the resultant values in
chip registers and buffers for further use by software.
In Transparent mode, for TX, software configures and prepares the MACFrame and stores in in
a buffer for transmission, while for RX, the MACFrame is transparent to the chip and stores
the entire MACFrame in a buffer for further use by software.
Field
TxRxBbBufferMode0
12.3
Offset
Read/Write
0x4A
WO
brst
BbClk
Description
Sets the TX and RX data as either two segments
(Auto) or all four segments (Transparent).
MAC Header
Lower half
Payload
For TX, the digital part of the chip builds the MAC header using values stored in chip buffers and
registers, including the payload data. Additional packet requirements (Preamble, SyncWord and
Tail) are added to this completed MACFrame and the packet is transmitted.
2008 Nanotron Technologies GmbH.
NA-06-0230-0385-2.00 Page 59
12
For RX, the Preamble, SyncWord and Tail are removed and the MAC header and payload of
extracted MACFrame are stored in chip registers and buffers. Software can then read out the
resultant MAC header values and payload data.
12.3.1
12.4
Payload
Lower half
Payload
For TX, software builds the MACFrame by assembling the MAC header and payload data. This
assembled MACFrame is placed in the a baseband RAM buffer(s). The nanoLOC chip builds the
packet by using this MACFrame and additional packet requirements (Preamble, SyncWord and
Tail) after which the packet is transmitted.
For RX, the Preamble, SyncWord and Tail are removed and the MACFrame is extracted from the
packet and stored in the baseband RAM buffer. This MACFrame is read out and provided to an
application for further processing.
12.4.1
Page 60 NA-06-0230-0385-2.00
13
13.1
Overview
The 1024 byte memory space of the nanoLOC chip consists of four baseband RAM segments
totaling 512 bytes.
Note: See also 8. nanoLOC Memory Map on page 39.
Each of the four segments has a 128 byte register space, three of which are mappings of the chip
register space (0x00 to 0x7F). The mappings of the register space and the four baseband RAM
segments are shown in the following figure.
0x3FF
128 bytes
128 bytes
Register
128 bytes
128 bytes
Register
0x380
0x37F
Page 3
0x300
0x2FF
0280
0x27F
Page 2
0x200
0x1FF
128 bytes
0x180
0x17F
Page 1
128 bytes
Register
0x100
0x0FF
128 bytes
0x080
0x7F
Page 0
128 bytes
Register
0x00
Figure 58: Baseband RAM memory space
13.1.1
Configurable Spaces
The chip register memory space is non-configurable. Values written to the register address spaces
(0x00 - 0x7F, 0x100 - 0x17F, 0x200 - 0x27F and 0x300 - 0x37F) always access the same Register
Block (e.g. 0x00 is equivalent to 0x100, 0x200 and 0x300).
Baseband RAM, however, is configurable. Pages 0 to 3 of the Baseband RAM is configurable to
one of four mode combinations, as described in table 33 below.
Table 33: Baseband RAM configuration modes
Mode
Description
Auto/Duplex Mode
Two separate data buffers of 128 bytes each of the baseband RAM are
used (Page 2 and Page 3).
Auto/Simplex Mode
Two baseband RAM pages of 128 bytes each are combined for a single data buffer for both RX and TX (Page 2 and Page 3)
Transparent/Duplex
Two separate buffers of 256 bytes each are used for an RX data buffer
and a TX data buffer (Page 0, Page 1, Page 2 and Page 3).
Transparent/Simplex
a single 512 byte RX/TX data buffer is used sequentially for either a RX
data buffer or TX data buffer (Page 0, Page 1, Page 2 and Page 3).
NA-06-0230-0385-2.00 Page 61
13
13.2
Memory Usage
Each combination of MACFrame configuration modes with Baseband buffer configuration modes
results in different memory usages. The following table shows the four possible combinations with
the resultant memory usage:
Table 34: Baseband memory usage
13.3
Memory Usage
Auto
Transparent
Simplex
Duplex
Size
Purpose
Page 0 and 1
256 bytes
Page 2
128 bytes
Single page used as a buffer for the data payload of received packets.
Page 3
128 bytes
0x380
0x37F
Register
0x300
0x2FF
Receive buffer RamRxBuffer_O
0280
0x27F
Register
0x200
0x1FF
0x180
0x17F
Register
0x100
0x0FF
Baseband RAM Page 0
Includes: source station addresses, TX and R X destination station address, TX and RX data length,
RX source address, TX and RX RTC buffer
0x080
0x7F
Register
0x00
Figure 59: Baseband RAM memory map for Auto / Duplex
13.3.1
The following settings are made to configure the Baseband RAM for Auto / Duplex mode:
+
Page 62 NA-06-0230-0385-2.00
13.3.2
13
The RX data buffer (set by RamRxBuffer_O) consists of two blocks of 64 bytes each, where:
+
The TX data buffer (set by RamTxBuffer_O) consists of two blocks of 64 bytes each, where:
+
13.4
Size
Purpose
Page 0 and 1
256 bytes
Page 2 and 3
256 bytes
Both pages are used as a data buffer for the data payload of
received packets or packets to be transmitted.
0x380
0x37F
Register
0x300
0x2FF
Baseband RAM Page 2
0280
0x27F
Register
0x200
0x1FF
0x180
0x17F
Register
0x100
0x0FF
Baseband RAM Page 0
Includes: source station addresses, TX and R X destination station address, TX and RX data length,
RX source address, TX and RX RTC buffer
0x080
0x7F
Register
0x00
Figure 60: Baseband RAM memory map for Auto / Duplex
13.4.1
The following settings are made to configure the Baseband RAM for Auto / Simplex mode:
+
NA-06-0230-0385-2.00 Page 63
13
13.4.2
The TX / RX data buffer (set by RamTxRxBuffer_0) consists of two blocks of 128 bytes each,
where:
+
13.5
Size
Purpose
Page 0 and 1
256 bytes
Page 2 and 3
256 bytes
Register
0x380
0x37F
TX Data Buffer: RamTxTransBuffer_0
0x300
0x2FF
Baseband RAM Page 2
Register
0280
0x27F
0x200
0x1FF
Register
0x180
0x17F
RX Data Buffer: RamRxTransBuffer_0
0x100
0x0FF
Baseband RAM Page 0
Register
0x080
0x7F
0x00
13.5.1
The following settings are made to configure the baseband RAM for Transparent / Duplex mode:
+
13.5.2
The RX data buffer (set by RamRxTransBuffer_0) consists of two blocks of 128 bytes each,
where:
+
Page 64 NA-06-0230-0385-2.00
13
The TX data buffer (set by RamTxTransBuffer_0) consists of two blocks of 128 bytes each,
where
+
13.6
Size
Page 0, 1, 2, and 3
256 bytes
Purpose
All pages are used as a single data buffer for either received packets
or packets to be transmitted.
0x380
0x37F
Register
0x300
0x2FF
Baseband RAM Page 2
0280
0x27F
Register
0x200
0x1FF
0x180
0x17F
Register
0x100
0x0FF
Baseband RAM Page 0
0x080
0x7F
Register
0x00
Figure 62: Baseband RAM memory map for Auto / Duplex
13.6.1
The following settings are made to configure the baseband RAM for Transparent/Simplex mode:
+
13.6.2
The RX/TX data buffer (set by RamRxTransBuffer_0) consists of two blocks of 256 bytes each,
where:
+
NA-06-0230-0385-2.00 Page 65
13
Page 66 NA-06-0230-0385-2.00
14
14.1
Overview
The nanoLOC chip can process packets for transmit and receive sequentially or simultaneously. In
sequential mode or Simplex Mode, at any given time the chip can process either received packets
or packets for transmission. In simultaneous mode or Duplex Mode, at any given time, the chip can
process both received packets and packets for transmission. Each mode requires a configuration
of the baseband RAM.
14.2
Field
TxRxBbBufferMode1
14.3
Offset
Read/Write
0x4A
WO
brst
BbClk
Description
Sets the data buffer for TX and RX as either two
blocks (Duplex) or a single block (Simplex).
TX Buffer
Second block
RX Buffer
14.3.1
14.4
Simplex Mode
In Simplex Mode, a single baseband RAM buffer of at least two pages is used for both TX and RX.
This results in a larger buffer available for the MACFrames. The size of the buffer is dependent on
the selection of MACFrame mode (Auto or Transparent).
TX Buffer
Both blocks used as a
single buffer
NA-06-0230-0385-2.00 Page 67
14
14.4.1
Page 68 NA-06-0230-0385-2.00
15
15.1
Field
SwapBbBuffers
15.2
Offset
RW
0x4A
RW
brst
BbClk
Description
Exchanges RX and TX Baseband Buffers.
SwapBbBuffers = 1 (True) data for a transmit operation is taken from the receive buffer
while the data of a receive operation is stored in the transmit buffer. Enable only for Auto /
Duplex mode and Transparent / Duplex mode.
SwapBbBuffers = 0 (False) data in the buffers belong to their intended direction (default
state).
TX
Segment 3
RX
Segment 3
RX
Segment 2
TX
Segment 2
Segment 1
Segment 0
Default State
Segment 1
Does not
swap
Segment 0
Buffer Swapping Enabled
Figure 65: Auto / Duplex mode default state and buffer swapping enabled
NA-06-0230-0385-2.00 Page 69
15
15.3
The following shows the default state for Transparent / Duplex mode and when buffer swapping
has been enabled:
Buffer Mode = Transparent/Duplex,
TxRxBbBufferSwp = False
Segment 3
Segment 3
TX
RX
Segment 2
Segment 2
Segment 1
Segment 1
RX
TX
Segment 0
Segment 0
Default State
Figure 66: Auto / Transparent mode default state and buffer swapping enabled
15.4
15.5
Page 70 NA-06-0230-0385-2.00
16
[0]
[1]
[0]
[0]
[1]
Write TxBuffer[0]
Write TxBuffer[1]
Write TxBuffer[0]
Write TxBuffer[1]
Write TxBuffer[0]
[1]
[0]
[0]
[1]
[0]
t
TxBuffer[1]
TxBuffer[1]
TxBuffer[0]
TxBuffer[0]
TxBuffer[0]
Packet Begin
MACFrame
Packet End
16.2
NA-06-0230-0385-2.00 Page 71
16
When the last byte has been read from a receive buffer segment, the software issues the receive
buffer ready command to indicate to the receiver that the buffer part has been read out completely.
If the number of MACFrame (payload) data bytes is not an integer number of the buffer part size,
the buffer ready flag is also triggered when the last byte of the frame has been stored in a buffer
part. In this case, it is not required to read out this buffer segment completely, but it is mandatory to
issue the buffer command.
A typical receive buffer control timing is illustrated below.
[0]
[0]
[1]
[1]
[0]
[0]
[1]
Read TxBuffer[0]
Read TxBuffer[1]
Read TxBuffer[0]
Read TxBuffer[1]
Read TxBuffer[0]
[0]
[1]
[0]
t
RxBuffer[1]
RxBuffer[1]
RxBuffer[0]
RxBuffer[0]
RxBuffer[0]
Packet Begin
MACFrame
Packet End
Page 72 NA-06-0230-0385-2.00
17
17.1
BufferRdy[1]
BufferCmd[0]
Buffer[0]
BufferRdy[0]
Figure 69: Example buffer showing upper and lower parts with flags and commands
Note: The size of the buffer depends on the selected buffer configuration mode.
A flag-command pair is provided for each buffer segment (lower and upper) and for each direction
(transmit and receive).
17.2
Flag
Description
RxBufferRdy[0]
Indicates to the software that RxBuffer[0] (lower segment) has been filled
up with data by a receive operation.
RxBufferRdy[1]
RxOverflow
Indicates to the software that a buffer part has been accessed by the
receiver, but was not ready to store data (a receive buffer command was not
issued in time).
Table 42: Transmit flags
Flag
Description
TxBufferRdy[0]
TxBufferRdy[1]
TxUnderrun
Flag which indicates to the software that a buffer part has been accessed by
the transmitter but was not ready for transmission (means that a transmit
buffer command was not issued in time).
NA-06-0230-0385-2.00 Page 73
17
17.3
Commands are issued after a data transaction and indicate to the transceiver baseband that data
is ready for transmission or buffers are ready to store received data. The following tables lists the
receive and transmit commands.
Table 43: Receive Commands
Command
Description
RxBufferCmd[0]
RxBufferCmd[1]
Command
Description
TxBufferCmd[0]
TxBufferCmd[1]
The following diagram shows the flags and commands for buffer access synchronization.
BufferCmd[1]
Buffer[1]
(upper segment)
BufferRdy[1]
BufferCmd[0]
Software
Transmitter/Receiver
Buffer[0]
(Lower segment)
BufferRdy[0]
Overflow / Underrun
Buffer Management Unit
External Microcontroller
TRX
Note: Flags and commands are always related to their buffer segments, independent of buffer
size. Also, transmit buffer overflows are severe software errors and are not implemented.
Page 74 NA-06-0230-0385-2.00
Bit Processing
nanoLOC TRX Transceiver (NA5TR1) User Guide
18
18 Bit Processing
This section describes the methods used in the nanoLOC chip for bit error detection, forward error
correction, bit scrambling, retransmission, and encryption.
18.1
Cyclic Redundancy Check (CRC), which is added to the MACFrame for error detection.
Encryption, which is optionally applied to the Data and CRC2 fields of the MACFrame.
In the receiver, the reverse process is carried out. The following illustrates the processes:
MACFrame to transmit
CRC Generation
Encryption
Scrambling
FEC Encoding
RF Interface
CRC Checking
Decryption
Descrambling
FEC Decoding
Received MACFrame
Optional
Mandatory
Note: CRC and bit scrambling processes are mandatory, while FEC and encryption can be
enabled by the application.
18.2
Address1
Address2
Length
Frame CRC1
Control
Data
CRC2
NA-06-0230-0385-2.00 Page 75
18
Bit Processing
nanoLOC TRX Transceiver (NA5TR1) User Guide
18.3
Bit Scrambling
Before transmission, all fields of the MACFrame, except the ScrambIerInit field, are scrambled with
a PRN-sequence to randomize the data into highly redundant patterns and to minimize the probability of large zero patterns. At the receiver, the received data is descrambled using the same PRNsequence that was generated in the transmitter.
The PRN-sequence is generated with the polynomial g(D)= D7+D4+D0 (221 in octal representation) and is subsequently EXORed with the MACFrame. Before each transmission, the shift register must be initialized with a 7 bit value by the transmitting station. The value should be changed
for every new packet, even for retransmissions.
Note: No scrambling is performed when an initialization value of zero is programmed.
The initial value of the shift register is loaded in the ScrambIerInit field of the packet (LSB first) and
sent over the air interface. During reception of a MACFrame, the shift register of the receiver
descrambler is initialized with the bits from the ScramblerInit field. Consequently, the remaining
fields are subsequently EXORed with the same PRN-sequence.
18.4
Page 76 NA-06-0230-0385-2.00
Bit Processing
nanoLOC TRX Transceiver (NA5TR1) User Guide
18
The code is able to correct single bit errors and detect double bit errors within a codeword. Consequently, a 14 bit code word can contain 2 bit errors even if the bit errors are consecutive. This is
achieved through the interleaving scheme.
The receiver informs the LLC about the number of bit errors that have occurred during the reception and correction of a Data packet. This bit error number combined with the Length field is an
indication of the BER at the physical interface.
18.5
Encryption
The encryption process is applied to the Data and CRC2 fields of a MACFrame. This process is
based on a stream cipher with a symmetric key scheme. The stream cipher sequence bits are
XORed with the data bits before transmission or after reception. The cipher stream is re-initialized
for every packet (re-)transmission. Since the process is reversible, the same cipher stream is used
for encryption and decryption. Consequently, the same input values are required for the generator
in both the transmitter and the receiver. The 32 bit clock value and the 48 bit address are publicly
known while the 128 bit secret key is generated during the encryption negotiation process and
never disclosed.
Note: For more details, see 19.1.1. Stream Cipher Function on page 79.
To keep the probability very low of a successful correlation attack, the same cipher stream is never
used twice. The 32 bit clock value is changed (at least incremented by one) for every new packet
transmission.
NA-06-0230-0385-2.00 Page 77
18
Bit Processing
nanoLOC TRX Transceiver (NA5TR1) User Guide
Page 78 NA-06-0230-0385-2.00
19
Chirp Modulation
nanoLOC TRX Transceiver (NA5TR1) User Guide
19 Chirp Modulation
This section describes describes nanoLOCs modulation technique, Chirp Spread Spectrum
(CSS), which was developed by Nanotron.
19.1
tSymbol
tSymbol
Upchirp Pulse
Downchirp Pulse
Figure 73: Upchirp and Downchirp pulses
The difference between these two frequencies is approximately the bandwidth B of the chirp pulse.
For this specification, Upchirps and Downchirps have the following characteristics:
+
Note: Chirp duration is the time when a signal is present and the gap is not regarded. For example, chirp duration is 0.5 s and symbol period is 1 s. Then symbol duration consists of a
0.5 s chirp signal and a 0.5 s gap.
Using these chirp pulses, several different modulation systems can be selected to represent binary
symbols. These include:
19.2
19.2.1
An Upchirp and a Downchirp could be used to represent binary symbols. For example, the Upchirp
could represent a bit value of 1 while the Downchirp could represent a bit value of 0.
An example of an Upchirp/Downchirp pulse sequence is illustrated below:
t
1
Upchirp
Downchirp
Upchirp
tSPeriod
Downchirp
Downchirp
Downchirp
Upchirp
NA-06-0230-0385-2.00 Page 79
19
Chirp Modulation
nanoLOC TRX Transceiver (NA5TR1) User Guide
19.2.2
Using On/Off Keying, an Upchirp/Off modulation system can be produced, where an Upchirp pulse
could represent a bit value of 1 while the absence of an Upchirp pulse (an off chirp pulse) could
represents a bit value of 0. An example of an Upchirp/Off pulse sequence is illustrated below:
t
1
Upchirp
Off
Upchirp
tSPeriod
Off
Off
Off
Upchirp
19.2.3
Using On/Off Keying, a Downchirp/Off modulation system can be produced, where a Downchirp
pulse could represent a bit value of 1, while the absence of a Downchirp pulse (an off chirp
pulse) could represents a bit value of 0. An example of a Downchirp/Off pulse sequence is illustrated below:
t
1
Downchirp
Downchirp
Off
tSPeriod
Downchirp
Downchirp
Downchirp
Off
19.2.4
The two binary On/Off keying modulation systems (Upchirp/Off and Downchirp/Off) require only
Upchirp or Downchirp pulses. Consequently, these two different on-off keying systems can access
the same medium with low interference (0 < cross correlation < 0.5) to each other.
Both systems can operate in the same frequency channel, in the same physical range, and at the
same time but remain independent of each other. They can, therefore, be regarded as separated
physical channels.
Page 80 NA-06-0230-0385-2.00
Local Oscillator
nanoLOC TRX Transceiver (NA5TR1) User Guide
20
20 Local Oscillator
This section describes how to calibrate Local Oscillator frequency.
20.1
20.2
Start up the baseband clock and reset the digital baseband controller, if required.
Enable the LO circuitry, the LO divider, and the LO adjustment clock as follows:
a. Set EnableLO = True.
b. Set EnableLOdiv10 = True.
Switch the Local Oscillator into transmit mode by setting UseLoRxCaps = False.
Wait 24 s.
Set the 16 bit value for the TX target frequency fTarget as follows:
LoT arg etValue = round LoDiv10
---------------------- 12
16
8192
The adjustment procedure starts automatically when writing to the upper bits of the value.
Frequency example: fTarget = 2.44175 GHz:
Table 45: Value for fTarget
fTarget
RfLoAdjIncValue
2.44175 GHz
0x685A
mode.
7
Optionally, the resulting value LoTxCapsValue can be put into a variable to be used after power
down mode. During powering up, this value can then be reused:
NA-06-0230-0385-2.00 Page 81
20
Local Oscillator
nanoLOC TRX Transceiver (NA5TR1) User Guide
Repeat the procedure for tuning the receiver. Use LoRxCaps = True for tuning RX.
20.2.1
The following fields are used for updating the Local Oscillator.
Table 46: RTC and TimeB packets
Field
EnableLO
EnableLOdiv10
UseLoRxCaps
Offset
Read/Write
0x42
WO
brst
BbClk
0x42
WO
brst
BbClk
0x1C
WO
brst
BbClk
Description
Switch between TX and RX Caps for LO caps tuning. This field must be set before starting the LO
caps tuning.
16 bit target value for the Local Oscillator frequency adjustment. This value is used to determines the target LO center frequency.
The LOTargetValue is determined as follows:
LoTxCapsValue
0x1D 0x1E
0x19 0x1B
WO
brst
BbClk
RW
brst
BbClk
Page 82 NA-06-0230-0385-2.00
RF Transmitter
nanoLOC TRX Transceiver (NA5TR1) User Guide
21
21 RF Transmitter
This section describes the adjustment of the Baseband filter frequency, the power amplifier bias
current, and the output power of the transmitter.
21.1
A fixed relationship exists between the RC-Oscillator (RCOSC) frequency and the Baseband
filter frequency because both circuits use the same resistor and capacitor types.
The user can set the 4 bit value ChirpFilterCaps to adjust the RC-oscillator/Baseband filter
frequency.
ChirpFilterCaps is used for adjusting the RCOSC frequency in comparison with the system
clock.
Ignore at least 4 cycles of RCOSC output frequency by waiting 20 s (baseband timer can be
used).
Count the cycles of the baseband system clock for next cref cycles of RCOSC as follows:
a. Start the counter by setting StartFctMeasure = True.
1
b. Wait at least --------- .
f ref
c. Read out the counter value from the FctPeriod field.
d. Run this sequence cref times, accumulating the counter value after each run.
NA-06-0230-0385-2.00 Page 83
21
RF Transmitter
21.2
Switch
Setting
000
RfTxPaBiasAdj (TxPaBias)
21.3
The typical characteristics of the output power control (as set by RfTxOutputPower) measured at
the SMA connector of the nanoLOC RF Module is shown below. The typical output power values
are listed in table Table 48 on page 84.
Figure 4: nanoLOC (NA5TR1) output power control measured at SMA connector of RF Test Module
Table 48: Typical output power for RfTxOutputPower register values
Register
Value
Pout /
dBm
Register
Value
Pout /
dBm
Register
Value
Pout /
dBm
Register
Value
Pout /
dBm
-36.20
16
-23.28
32
-12.07
48
-3.33
-35.30
17
-22.48
33
-11.41
49
-2.87
-34.47
18
-21.75
34
-10.80
50
-2.45
-33.65
19
-21.03
35
-10.20
51
-2.05
-32.83
20
-20.31
36
-9.61
52
-1.66
-32.02
21
-19.60
37
-9.03
53
-1.28
-31.21
22
-18.89
38
-8.46
54
-0.92
Page 84 NA-06-0230-0385-2.00
RF Transmitter
nanoLOC TRX Transceiver (NA5TR1) User Guide
21
Pout /
dBm
Register
Value
Pout /
dBm
Register
Value
Pout /
dBm
Register
Value
Pout /
dBm
-30.41
23
-18.19
39
-7.91
55
-0.57
-29.54
24
-17.44
40
-7.31
56
-0.23
-28.70
25
-16.70
41
-6.74
57
0.12
10
-27.92
26
-16.02
42
-6.22
58
0.42
11
-27.14
27
-15.36
43
-5.71
59
0.72
12
-26.37
28
-14.70
44
-5.21
60
1.00
13
-25.60
29
-14.04
45
-4.73
61
1.28
14
-24.85
30
-13.40
46
-4.26
62
1.54
15
-24.09
31
-12.76
47
-3.80
63
1.79
21.3.2
Field
Offset
Read/Write
ChirpFilterCaps
0x27
WO
brst
BbClk
EnableTx
0x27
WO
brst
BbClk
FctClockEn
0x27
WO
brst
BbClk
StartFctMeasure
0x27
WO
brst
BbClk
LoTxCapsValue
0x19 to
0x1B
RW
brst
BbClk
TxPaBias
0x43
WO
brst
BbClk
TxOutputPower0
0x44
WO
brst
BbClk
Description
NA-06-0230-0385-2.00 Page 85
21
RF Transmitter
nanoLOC TRX Transceiver (NA5TR1) User Guide
Page 86 NA-06-0230-0385-2.00
22
22.1
Symbols Definitions
The following symbol is used in this section:
+
MacArqCntMax
Note: These symbols are defined in Appendix 1: Attributes and Constants on page 289.
22.2
Master-Slave Protocols - A single master station allocates bandwidth for a slave station and it
assumes that there are no competitors for the media other than this master. The master then
polls a slave to request a Data packet. Only that polled station can transmit a Data packet. The
master station then waits for the Data packet a time-out interval and then polls this slave again
or else polls other slave stations. The poll command is transmitted to the slave via an LCMP
command in a Data packet.
TDMA - Time Slotted Media Access achieves bandwidth reservation through the use of dedicated time slots.
Note: For more details, see 22.4. Time Slotted Access (TDMA) on page 94.
22.3
A station that has data to transmit first senses the channel (CSMA) for a certain duration to
determine if the media is busy before transmitting a message.
If the channel is idle, the station waits a random period of time (a backoff time) and then
attempts again to acquire the media. This random backoff scheme avoids collisions (CA) as
much as possible.
The acquisition of the media is followed by the transmission of the Data packet.
This transmission is then acknowledged by the destination station with an Ack packet to allow
the transmitting station to determine if the transmission was successful. If an Ack packet was
not received, the transmission was deemed not successful.
This procedure is repeated until the transmission has been successful, a retransmission
counter is exceeded, or a time-out is reached.
NA-06-0230-0385-2.00 Page 87
22
CSMA/CA
Initiate transmission
of a data packet
Set random
range to min
N
Retransmissions
= max
Flush
packet
Decrement backoff
counter if !zero
Increment
retransmission
counter
Medium = busy
Counter = zero
Y
Transmit packet
Wait on
acknowledge
Acknowledge
= true
Physical carrier sensing detects activity in the media via a bit detector unit and a RSSI (Receive
Signal Strength Indicator). For instance, if the bit detector senses chirp signals, then there is
communication activity in the media. The physical carrier sensing unit selects the output of
either the bit detector or the RSSI or both. A station will continue sensing the media until the
media has been idle for at least a CIFS (Carrier sense InterFrame Space) period.
Page 88 NA-06-0230-0385-2.00
22
Virtual carrier sensing predicts if the media is allocated by detecting the TypeCode and Length
fields in packets transmitted by any station. These fields are used to indicate the amount of
time required to complete a transmission and are used by stations to adjust their NAVs (Network Allocation Vector). A NAV is an indicator of the amount of time that must elapse until the
current transmission is complete and when the media can be sampled again to determine if the
media is idle.
A station updates its NAV with the indication from the Length field. If the error detection over the
MACFrame fails (that is CRC1 fails), then the NAV is set to 0 and physical carrier sensing is
applied until the NAV can be updated again.
If either the physical or virtual carrier sensing mechanisms indicate that the channel is busy, then
the channel is marked busy. Carrier sensing for Data, Brdcast, and TimeB packets is illustrated
below.
TypeCode
Field
SIFS
CIFS
Length
Field
Data
Ack
NAV (Data)
Defer access
TypeCode
Field
CIFS
Length
Field
Brdcast, TimeB
t
NAV (Brdcast, TimeB)
Defer access
Figure 6: CSMA/CA Carrier Sense Timing diagram of Data, Brdcast and TimeB packets
The NAV can also be used as a mechanism for power saving. A station can be powered down for a
NAV period of time. However, if a station is powered down, it is unable to receive packets and, consequently, cannot update its NAV.
22.3.3 Backoff Time
If the media is detected idle, the transmitting station waits a specific period of time before it reattempts a transmission. This period is the contention window (CW) and is determined by a backoff
counter which counts defined time slots, each of which is a Backoff Time Slot (BTS). This is illustrated below, where BTS = 24 s.
NA-06-0230-0385-2.00 Page 89
22
CIFS
BTS
BTS
BTS
BTS
BTS
Physical
carrier sensing
RSSI
5
NAV
Defer access
Contention window
Media
access
While the media is idle, a station decrements its backoff counter using physical carrier sensing until
the media again becomes busy. While the media is busy, the backoff counter is frozen until virtual
and physical carrier sensing detects that the media has again become idle. The state of the media
can, therefore, be determined at any time during a BTS.
A station can access the media and transmits a packet only when the backoff counter reaches 0
and if the media is idle.
When a station makes the first transmission attempt, the backoff counter is initialized with a
pseudo-random integer in the range of 0 to 7. For every new transmission attempt this range is
doubled, which is an exponential backoff. For the second transmission attempt, the backoff counter
is initialized with a pseudorandom integer in the range of 0 to 15; for the third attempt, it is initialized in range of 0 to 31; and so on until the range reaches 0 to 255. The pseudorandom integer is then drawn from the range of 0 to 255 for every new attempted retransmission.
22.3.4 Retransmissions
A retransmission is the repeated transmission of the same Data packet. If a transmitting station
does not receive an acknowledgement from a destination station, the Data packet must be retransmitted. This failed acknowledgement can be either the absence of an Ack packet in response to a
Data packet or, in the case of a three-way handshake, the absence of a Clr2S packet in response
to a Req2S packet. Both cases are regarded as unsuccessful transmission attempts.
Note: See also 23.2. Error Correction (ARQ scheme) on page 99 and 22.3.5. Three-Way Handshake on page 91.
A transmitting station cannot determine the reason for any unsuccessful transmission attempt. It is
unable to detect, for instance, if a collision occurred or if the transmission path was disrupted. In
every case, a retransmission is required.
To limit the number of unsuccessful retransmission attempts, a retransmit counter counts the unacknowledged transmissions. When the maximum number of attempts is reached, as defined by the
MacArqCntMax attribute, no more retransmissions are made and the LLC is informed that the
maximum number of unsuccessful transmission attempts have been reached.
Note: Retransmission is applied only to Data packets. Brdcast and TimeB packets cannot be
retransmitted because they do not require an acknowledgement. In the latter case, resent
packets are never regarded as retransmitted, even if consecutively sent packets are identical.
Page 90 NA-06-0230-0385-2.00
22
All stations in range of the transmitting station hear the Req2S, set their NAVs and defer their
transmissions.
The destination station waits a SIFS interval (8 s) and responds with a Clr2S (clear to send
packet).
All stations in range of the destination station hear the Clr2S, set their NAVs and defer their
transmissions.
On receiving the Clr2S, the transmitting station assumes that the channel is acquired, waits the
SIFS interval, and then transmits the Data packet.
The station transmitting the Req2S packet waits for the Clr2S packet an interval defined by
MacClr2STimeMax. If during this time it receives and recognizes any other valid packet, such
as a Data, Brdcast, TimeB, or Req2S packet, it considers the transmission attempt as unsuccessful. Nevertheless, the recognized packets are processed. If during this time it receives and
recognizes an invalid packet, such as an Ack packet, it also considers the transmission attempt
as unsuccessful, but in this case the invalid packet is ignored.
The station transmitting the Clr2S packet waits for the Data packet until it arrives. If during this
time it receives any valid packets, such as Data, Brdcast, TimeB, or Req2S packets, it processes them. If during this time it receives any invalid packets, such as Ack or Clr2S packets, it
ignores them.
Tx:
Req2S
Rx:
t<MacClr2STimeMax
Data
Clr2S
Clr2S
SIFS
Figure 8: Three-way handshake timing (at transmitter)
The NAV in combination with a three-way handshake is intended to eliminate the so-called hidden
node problem. Carrier sensing in a three-way handshake is illustrated below.
NA-06-0230-0385-2.00 Page 91
22
Length
Field
SIFS
SIFS
SIFS
CIFS
TypeCode
Field
Data
Req2S
Ack
Clr2S
NAV (Data)
NAV (Clr2S)
NAV (Req2S)
Defer access
Note: The three-way handshake mechanism adds overhead inefficiency because of the additional
Req2S and Clr2S packets required for this strategy. Also, if this strategy is used, every
transmission of a Data packet will require the use of this mechanism, whether the packets
are large or even a fragment of a longer message.
22.3.6 Three-Way Handshake and ARQ Mode
The three-way handshake performs a type of fast collision inference and a transmission path
check. Depending on the length of the Data packet, it may be more efficient to use either three-way
handshake or ARQ mode.
Three-way handshake requires at total of 272 s to send the Req2S packet, wait the
MacClr2STimeMax, receive the Clr2S packet, and wait the SIFS interval before sending the Data
packet to the receiver, as shown in the following table.
Table 50: Three-way handshake timing
Packet/Interval
Time
144 s
96 s
MacClr2STimeMax
24 s
SIFS
8 s
Data packet
X s
Total
272 s + X s
For short Data packets with a length of less than 152 bits (2ary mode), it may be better to use ARQ
mode than the three-way handshake. In ARQ mode, collision interference can be detected in a
time period of less than 272 s with a packet of this size. The originating station can therefore
repeat the process more quickly (after observing the other media-use rules) if a collision occurred.
Page 92 NA-06-0230-0385-2.00
22
For long Data packets with a length of greater than 152 bits, using a three-way handshake rather
than ARQ mode will result in collision interference being detected in a shorter time period than with
ARQ mode. The process can be repeated more quickly by the originating station (after observing
the other media-use rules) if a collision occurred.
Table 51: ARQ mode timing
0 s
Tx:
Packet/Interval
Time
MacAckTimeMax
24 s
Ack packet
96 s
Data packet
X s
Total
120 s + X s
152 s
272 s
820 s
Req2S
Rx:
972 s
Data
Clr2S
Data
Ack
Data
Ack
NA-06-0230-0385-2.00 Page 93
22
Stations can give their transmission attempts a higher priority by disabling the backoff counter,
even for retransmission attempts. However, in this case, the prioritized access does not promote
fairness among stations because they would not have an equal probability of gaining access to the
media. Consequently, the excessive use of prioritized packets can lead to unpredictable network
performance and possibly even a network deadlock.
Nevertheless, the remaining fragments of a message transmission should get a higher priority for
the first transmission attempt and for retransmissions. This is achieved by masking out the MSB of
the random value before initializing the backoff counter. In this case, this MSB is set to the value
1 for transmitting non-fragmented messages and for the first fragment of a fragmented message,
while this MSB is set to the value 0 for transmitting the remaining fragments of a fragmented message. A fragmented message therefore receives a higher priority than a non-fragmented message
without violating the fairness principle.
A station is configurable to switch on and off the fragmentation prioritization scheme.
22.4
22
time slots
TSA
TSD
TSRP
TSRP
Repetitions = TSRC
Figure 11: Time slot definition parameters
The base unit of TSA, TSD and TSRP is a TSU. A TSU starts if bits 0 to 4 of the RTC are the value
0.
Information about time slots are distributed by the master station to slave stations through the distribution of a Time Slot Table (TST). The master station transmits the TST in a Brdcast packet or
forwards the TST to stations requesting it by an LCMP command.
Note: Time slot administration/negotiation/maintenance procedures are defined in 11.2. Link Control Management on page 58.
Only during an allocated time slot can a slave station transmit or receive messages. If a transmission exceeds the time slot, the transmission is aborted on both sides (transmitting and receiving
stations) and an error is reported to the LLC.
To take into account the time deviation between the transmitting and receiving stations, the transmitting station must add a margin at the beginning of a time slot a Time Slot Offset (TSO).
To avoid the reception of a packet in the wrong time slot or the rejection of a packet in the receiving
station, the transmitting station can be configurable to delay the transmission of a packet. The
delay can be configurable in 0 to 31 steps of 1/32,768 s.
22.4.3 Logical Channels
A master station can dedicate a time slot to:
+
a slave station
to itself
to specific services
Specific services means that the time slot is used for specific functions, such as for the transmission of Brdcast, TimeB, or LCMP packets, as well as for specific application data.
In addition, time slots can be reserved for the direction of a transmission. An upstream slot is a
time slot in which slave stations have access to the master station to transmit packets to it. A downstream slot is a time slot in which slave stations can access the master to transmit packets to (a)
slave station(s).
2008 Nanotron Technologies GmbH.
NA-06-0230-0385-2.00 Page 95
22
Station UVW
upstream
LCMP downstream
t
Station MNO
upstream
Brdcast
Station ABC up/downstream
(DAS with master/slave protocol)
Station DEF
upstream
TimeB
In DA mode, a slot must either be dedicated to a single station or the master/slave protocol
must be used.
In CDMA/CA mode, multiple stations use a certain time slot for accessing the media in this
mode (hybrid access).
43
16
15
32,768 kHz
oscillator
268435456 s
976.5625 s
2s 1s
30.517578125 s
4294967296 s
UNIX-UTC
TS number
Figure 13: 48 bit Real Time Clock
Page 96 NA-06-0230-0385-2.00
22
Note: See also 5.2. 32.786 kHz Real Time Clock (RTC) on page 15 for updating the Real Time
Clock.
22.5
FDMA
To enable Networks to access the media at the same time the FDMA scheme can be used. All stations switched into the FDMA mode are using symbols with 22 MHz bandwidth. By using different
carrier frequencies for each network these networks are separated by frequency band and thus are
not disturbing each other.
FDMA is enabled by default in the nanoLOC chip.
22.5.1 Field for Enabling FDMA
The following field is used to enable FDMA
Table 52: Wake-up time fields
Field
FdmaEnable
Offset
0x4A
Read/Write
WO
brst
BbClk
Description
Enables FDMA (Frequency Division Multiple
Access), which uses 22 MHz bandwidth. When disabled, 80 MHz bandwidth is used. Enabled by
default.
Note: See 26.67. 0x4A Baseband Buffer and MACFrame Configuration on page 205
NA-06-0230-0385-2.00 Page 97
22
Page 98 NA-06-0230-0385-2.00
23
23.1
Symbols Definitions
The following symbols are used in this section:
+
SIFS
MacSifsTime
MacAckTimeMax
MacArqCntMax
These symbols are defined in Appendix 1: Attributes and Constants on page 289.
23.2
Data
Ack
Rx:
t<MacAckTimeMax
Figure 14: ARQ acknowledgement timing (at transmitting station)
Note: MacAckTimeMax < 24 s restricts usage of ARQ scheme to the stations which are located
no more than . 2400 meters away from each other due to propagation delay of the air interface segment.
If an Ack packet was not received at the end of a transmission, the source station retransmits the
Data packet to the receiving station. To limit the number of unsuccessful attempts, only a maximum
number of retransmissions are done as defined by the setting MacArqCntMax. A retransmit
counter in the source station counts the number of unacknowledged transmissions.
If the source station receives a valid packet (such as a Data, Brdcast, TimeB, or Req2S packet)
while it is waiting for the acknowledgement, it considers the transmission as unsuccessful. It then
retransmits the Data packet after it processed the received packet (and when the medium is idle
again). If the source station receives an invalid packet (such as a Clr2S packet) while it is waiting
for the acknowledgement, it is ignored and resumes retransmitting the Data packet (when the
medium is again idle).
Note: For more details, see 22. Media Access Control Methods on page 87.
To ensure that only a correct Data packet is accepted by a receiving station, the source station
adds CRC codes (CRC1 and CRC2) to the packet. The receiving station can then perform one of
two checks on that Data packet:
+
The receiving station checks both CRC1 or CRC2. If either of these codes fail, an Ack packet is
not transmitted.
NA-06-0230-0385-2.00 Page 99
23
The receiving station checks only CRC1. If CRC1 succeeds, then an Ack packet is then transmitted, irrespective of the CRC2. This mode can be used if it is unnecessary to ensure the
integrity of the data in the Data field of the MACFrame (for example, in voice applications).
Process other
packet types
Destination address
= Station address
Discard frame
CRC1 = OK
Discard frame
CRC2 = OK
or ICRC2
Discard frame
Y
Wait MacSifsTime
Transmit
acknowledgement
23.3
Retransmit Filtering
The SeqN bit of the FrameControl field identifies retransmitted packets so that the receiver can discard duplicates of successfully received Data packets.
The SeqN bit provides a sequential numbering scheme to order the Data packet stream. For each
new transmitted packet, the SeqN bit is inverted. This is required to filter out retransmissions at the
destination. For instance, if a retransmission occurs due to a failing acknowledge, the destination
will receive the same packet twice. By comparing the SeqN of consecutive packets, correctly
received retransmissions can be discarded.
23
SeqN
bit
SeqN
bit
SeqN
bit
SeqN
bit
SeqN
bit
SeqN
bit
SeqN
bit
SeqN
bit
SeqN
bit
SeqN
bit
Data Packet Data Packet Data Packet Data Packet Data Packet Data Packet Data Packet Data Packet Data Packet Data Packet Data Packet
Successful transmissions
Retransmissions
Flush command
Following new
successful transmissions
Successfully transmitted Data packets alternate the value of the SeqN bit between 0 and 1,
except for retransmissions. During retransmissions, the last value of the SeqN bit is retained until a
maximum retransmission value is reached, in which case, the transmitter performs a flush command and then waits for software to provide another Data packet for transmission.
Retransmission filtering is performed as follows:
1
On the sending station, the transmitter sends a Data packet and waits for an acknowledgement.
when an Ack packet is received successfully the SeqN bit is inverted and a new Data packet is
sent.
If no Ack packet has been received, the Data packet is retransmitted with the same SeqN number.
If the MacArqCntMax attribute is reached or a time-out is exceeded, the transmitter must flush
the unacknowledged Data packet to be ready to transmit a new Data packet. The flush is done
by a LCMP (Link Control Management Protocol) command. This procedure prevents the loss of
a Data packet due to the retransmit filtering.
On the destination station, the receiver compares the SeqN bit with the previous SeqN value. If
they are different, a new Data packet has arrived; otherwise it is the same Data packet and can
be discarded.
For more details, see 11.2. Link Control Management on page 58.
Since the ARQ scheme is only applied to Data packets, the SeqN bit in a Brdcast packet is not
meaningful. This bit is, therefore, in this case set to the value 0.
23.4
Fragmentation Control
The FragC bit of the FrameControl field identifies fragmented messages and is used to support the
fragmentation of messages. A value of 1 in this field indicates that at least one additional fragment will follow the packet containing this fragment. A value of 0 indicates the last fragment or the
frame is not fragmented.
A message can be fragmented into several Data packets. The FragC bit of a Data packet set to the
value 1 indicates that the packet is carrying either the first fragment or the continuing fragments
of the message. The FragC bit set to the value 0 indicates that either the Data packet is the last
fragment of a fragmented message or that the message has not been fragmented. The FragC bits
in non-fragmented messages are always set to the value 0.
23
FragC
bit
FragC
bit
FragC
bit
FragC
bit
FragC
bit
FragC
bit
FragC
bit
FragC
bit
FragC
bit
FragC
bit
Data Packet Data Packet Data Packet Data Packet Data Packet Data Packet Data Packet Data Packet Data Packet Data Packet Data Packet
Non-fragmented messages
Fragmented message
Last fragment
of a message
23.5
Address Formats
nanoLOC TRX Transceiver (NA5TR1) User Guide
24
24 Address Formats
This section describes addressing and message types in the nanoLOC chip.
24.1
octet 5
octet 4
octet 3
octet 2
octet 1
bit 7
bit 5
bit 5
bit 4
bit 3
bit 2
U/L
I/G
bit 1
bit 0
octet 0
Bit transmitted first
The 48 bit address1 is represented as a string of six octets. These octets are displayed from left to
right in the order in which the are transmitted, separated by hyphens. Each octet is displayed as
two hexadecimal digits. The bits within the octets are transmitted with LSB first.
A 48 bit address consists of two parts:
+
The first 24 bits correspond to the Organizationally Unique Identifier as assigned by the IEEE
with the exception that the first bit may be set by the assignee to either 1 for group addresses
or 0 for individual addresses.
Bit 0 of octet 0 is the I/G Address Bit. It is used to identify the destination address as either an individual or as a group. The I/G Address Bit can be set to either 0 or 1:
+
0 indicates that the address field contains an individual address. This is a unicast message,
where 0 = I.
1 indicates that the address field contains a group address that identifies one, many, or all stations. This is a multicast message, where 1 = G.
Note: A special, predefined group address of all 1s is an all-stations broadcast address for broadcast messages.
Administered locally
Administered by IEEE
octet 5
octet 4
octet 3
octet 2
octet 1
octet 0
bit 7
bit 5
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
1. Since the first two bits are not available for the address space, only 46 bits are actually available. This
results in 246 = 70,368,744,177,664 different addresses.
2008 Nanotron Technologies GmbH.
24
Address Formats
nanoLOC TRX Transceiver (NA5TR1) User Guide
Bit 1 of octet 0 is the U/L Address Bit. It is used to identify the address as either universally or
locally administrated. The U/L Address Bit can be set to either 0 or 1:
+
1 indicates that the entire address (all 48 bits) has been locally administered, where 1 = L.
Administered locally
octet 5
octet 4
octet 3
octet 2
octet 1
octet 0
bit 7
bit 5
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
24.2
Addressing
+
Broadcast Messages
In a broadcast message, all bits of the Address1 field in a Brdcast packet are set to
the value 1. If a Brdcast packet is received with the I/G bit set to 0, which would
indicate a unicast message, it is discarded without indication to the LLC.
+
Multicast Messages
In a multicast message, bit 0 of octet 0 is set to the value 1 while bit 1 of octet 0
identifies it as either a local or a universal (IEEE) address. The remaining bits represent a group address.
+
Unicast Messages
In a unicast message, bit 0 of octet 0 is set to the value 0. Since a Data packet is
always a unicast message, its I/G bit must be set to 0. If a Data packet is received
with the I/G bit set to 1, which would indicate a multicast message, it is discarded
without indication to the LLC.
+
Promiscuous Mode
When a station is set to promiscuous mode, it is able to receive Data packets, which
are unicast messages, addressed to any station and report them to the LLC. However, if the destination address does not match the station address, it must not send
an acknowledgement.
+
Since the distinction between a unicast, multicast, or broadcast message is accomplished by the I/G bit, coding a Brdcast packet through the TypeCode field is redundant. However, this redundancy allows the application of user-defined address
conventions that are independent of this convention.
25
MSB
Offset
RW
Bit Number
LSB
Irq
Driver
Irq
Polarity
SpiTx
Driver
SpiBit
Order
Irq
Driver
Irq
Polarity
SpiTx
Driver
SpiBit
Order
0x00
Version
WakeUpTimeByte
Revision
0x01
0x02
WakeUpTimeWe
W
R
Batt
Mgmt
Enable
Batt
Mgmt
Threshold
Batt
Mgmt
Enable
Batt
Mgmt
Threshold
Batt
Mgmt
Compare
0x03
DioInValueAlarmStatus
R
Dio
Use
Pulldown
0x04
W
Dio
Use
Pullup
Dio
Alarm
Polarity
Dio
Alarm
Start
DioOut
Value
Alarm
Enable
Dio
Direction
R
0x05
W
DioPortWe
Power
Down
Mode
PowerUpTime
Enable
Wake
UpDio
Enable
Wake
UpRtc
Power
Down
Mode
PowerUpTime
Enable
Wake
UpDio
Enable
Wake
UpRtc
0x06
Reset
BbRadio
Ctrl
Reset
BbClock
Gate
Reset
BbRadio
Ctrl
Reset
BbClock
Gate
Power
Down
0x07
W
Internal
Use Only
Internal
Use Only
Enable
Feature
Clock
FeatureClockFreq
Bypass
BbCrystal
Enable
BbClock
Enable
BbCrystal
Enable
Feature
Clock
FeatureClockFreq
Bypass
BbCrystal
Enable
BbClock
Enable
BbCrystal
0x08
25
MSB
Offset
RW
Bit Number
LSB
Use
Pulldown
4Spitxd
Use
Pullup
4Spitxd
Use
Pulldown
4Spirxd
Use
Pullup
4Spirxd
Use
Pulldown
4Spissn
Use
Pullup
4Spissn
Use
Pulldown
4Spiclk
Use
Pullup
4Spiclk
Use
Pulldown
4Ucrst
Use
Pullup
4Ucrst
Use
Pulldown
4Ucirq
Use
Pullup
4Ucirq
Use
Pulldown
4Pamp
Use
Pullup
4Pamp
Use
Pulldown
4Por
Use
Pullup
4Por
Write
Pulls
4Pads
Write
Pulls
4Spi
R
0x09
W
R
0x0A
W
R
0x0B
0x0C
0x0D
R
DeviceSelect
RamIndex
DeviceSelect
RamIndex
0x0E
LoIrq
Status
BbTimer
IrqStatus
RxIrq
Status
TxIrq
Status
LoIrq
Enable
BbTimer
IrqEnable
RxIrq
Enable
TxIrq
Enable
LoIrq
Enable
BbTimer
IrqEnable
RxIrq
Enable
TxIrq
Enable
LoInts
RawStat
Internal
Use Only
LoInts
Reset
Internal
Use Only
LoIntsEn
Internal
Use Only
0x0F
W
R
TxIntsRawStat
TxIntsReset
0x10
R
RxIntsRawStat
RxIntsReset
0x11
R
0x12
W
Clear
Base
band
TimerInt
R
0x13
W
TxIntsEn
R
0x14
W
RxIntsEn
R
0x15
W
25
MSB
Offset
RW
Bit Number
6
LSB
LoRxCapsValue
LoRxCapsValue
LoRxCapsValue
LoRxCapsValue
0x16
0x17
R
LoRxCapsValue
LoRxCapsValue
0x18
R
LoTxCapsValue
LoTxCapsValue
LoTxCapsValue
LoTxCapsValue
0x19
0x1A
R
LoTxCapsValue
LoTxCapsValue
0x1B
R
0x1C
W
Use
Lo
RxCaps
Internal
Use Only
Lo
Enable
Lsb
Neg
LoFastTuningLevel
LoTargetValue
LoTargetValue
LoTargetValue
LoTargetValue
Lo
Enable
Fast
Tuning
0x1D
0x1E
R
0x1F
W
AgcThresHold1
R
0x20
W
AgcThresHold2
R
0x21
W
Hold
Agc
InFrame
Sync
HoldAgcInBitSync
R
0x22
W
AgcNregLength
R
0x23
W
AgcIntTime
R
0x24
W
AgcIntTime
25
MSB
Offset
RW
Bit Number
6
LSB
R
0x25
W
AgcValue
R
0x26
W
AgcGain
Internal
Use Only
AgcRssiThres
FctPeriod
R
0x27
W
StartFctMeasure
EnableTx
FctClockEn
ChirpFilterCaps
R
0x28
W
BasebandTimerStartValue
R
0x29
W
BasebandTimerStartValue
ToaOffsetMeanAck
SyncWord
0x2A
R
0x2B
Toa
Offset
Mean
AckValid
ToaOffsetMeanAck
SyncWord
TxRespTime
SyncWord
TxRespTime
SyncWord
0x2C
0x2D
PhaseOffsetData
PhaseOffsetAck
0x2E
W
SyncWord
ToaOffsetMeanData
SyncWord
0x2F
R
0x30
Toa
Offset
Mean
DataValid
ToaOffsetMeanData
W
R
0x31
SyncWord
RxCrc2
Stat
RxCrc1
Stat
RxAddrMatch
RxPacketType
SyncWord
RxCorrBitErr
0x32
W
RxCorrErrThres
25
MSB
Offset
RW
RxCrypt
SeqN
0x33
Bit Number
6
5
RxCryptId
LSB
RxCrypt
En
TxTimeSlotStart
RxFec1BitErr
TxTimeSlotStart
RxAddr
Seg
IsMatch
RxAddr
Seg
EsMatch
RxTime
Slot
Control
TxTime
Slot
Control
0x34
R
RxFec1BitErr
0x35
W
TxTimeSlotEnd
R
0x36
W
TxTimeSlotEnd
R
0x37
W
R
RxPacketSlot
RxTimeSlotStart
RxPacketSlot
RxTimeSlotStart
0x38
0x39
R
0x3A
W
RxTimeSlotEnd
R
0x3B
W
RxTimeSlotEnd
TxArqCnt
R
0x3C
W
TxArqMax
R
0x3D
W
Internal
Use Only
Csq
UseRam
Internal
Use Only
Internal
Use Only
Csq
Mem
AddrInit
Csq
AsyMode
Csq
Use
4Phases
CsqUse
Phase
Shift
CsqDitherValue
R
0x3E
W
R
0x3F
W
Internal
Use Only
D3lPomLen
D3lPom
En
D3lFixn
Map
R
0x40
W
UseMap
Thresh1
InFrame
sync
LeaveMapThresh1InBitsync
25
MSB
Offset
RW
Bit Number
6
LSB
Enable
LOdiv10
Enable
LO
R
0x41
W
Internal
Use Only
Go2MapThresh1InBitsync
R
0x42
W
Internal
Use Only
Internal
Use Only
Internal
Use Only
Enable
ExtPA
Invert
RxClock
Enable
CsqClock
R
0x43
W
TxPaBias
LnaFreqAdjust
R
0x44
W
TxOutputPower0
R
0x45
W
TxOutputPower1
R
0x46
W
RfRxCompValueI
R
0x47
W
RfRxCompValueQ
R
0x48
W
Mod
ulation
System
SymbolRate
SymbolDur
R
TxRx
CryptCrc2
Mode
0x49
W
TxRxCryptClkMode
Use
Fec
Crc2Type
SwapBb
Buffers
R
0x4A
W
TxRx
Mode
TxRxBb
Buffer
Mode0
Fdma
Enable
TxRxBb
Buffer
Mode1
SwapBb
Buffers
R
0x4B
W
ChirpMatrix1
ChirpMatrix0
ChirpMatrix3
ChirpMatrix2
R
0x4C
W
R
0x4D
W
TxMac
CifsDis
TxUnder
runIgnore
TxPreTrailMatrix1
TxPreTrailMatrix0
R
0x4E
W
TxFrag
Prio
TxBack
OffAlg
Tx3Way
TxArq
TxVCarr
SensAck
TxPhCarrSenseMode
TxVCarr
Sens
25
MSB
Offset
RW
Bit Number
LSB
R
0x4F
W
TxBackOffSeed
R
0x50
W
TxCrypt
SeqN
TxCryptId
TxCrypt
En
TxCryptSeqReset
R
0x51
W
TxScramb
En
TxScrambInit
R
0x52
W
TxTransBytes
R
0x53
W
TxTransBytes
R
0x54
W
TxAddr
Slct
TxPacketType
R
0x55
W
TxBufferCmd
TxCmd
Start
TxCmd
Stop
RxBufferCmd
RxCmdStart
RxCmdStop
R
0x56
W
R
0x57
W
RxCryptSeqReset
R
0x58
W
RxTransBytes
R
0x59
W
RxTransBytes
R
0x5A
W
RxAddrSegDevIdL
RxAddr
Seg
IsMode
RxAddr
Seg
EsMode
RxArqMode
RxCrc2
Mode
RxTimeB
Crc1
Mode
Rx
Brdcast
En
RxDataEn
R
0x5B
W
Rx
Addr
Mode
Rx
TimeBEn
R
0x5C
W
PulseDetDelay
25
MSB
Offset
RW
Bit Number
6
Up
Pulse
DetectDis
Down
Pulse
DetectDis
LSB
2
R
0x5D
W
GateAdjThreshold
R
0x5E
W
GateAdj
Frame
syncEn
GateAdj
BitsyncEn
GateSizeFramesync
GateSizeBitsync
GateSizeUnsync
R
0x5F
W
LeaveBitsyncThreshold
Go2BitsyncThreshold
R
0x60
W
RtcTimeBTxAdj
R
0x61
W
RtcTimeBRxAdj
R
0x62
W
Internal
Use Only
Rtc
TimeB
AutoMode
Rtc
CmdRd
RtcCmdWr
R
0x63
W
AgcAmplitude
R
0x64
W
UseAlter
nativeAgc
AgcRangeOffset
R
0x65
W
R
0x66
W
R
0x67
W
R
0x68
W
R
0x69
W
R
0x6A
W
R
0x6B
W
25
MSB
Offset
RW
Bit Number
6
LSB
2
R
0x6C
W
R
0x6D
W
R
0x6E
W
R
0x6F
W
R
0x70
W
R
0x71
W
R
0x72
W
0x73
W
R
0x74
W
R
0x75
W
R
0x76
W
R
0x77
W
R
0x78
W
R
0x79
W
R
0x7A
W
R
0x7B
W
R
0x7C
W
25
MSB
Offset
RW
Bit Number
6
LSB
Internal
Use Only
Internal
Use Only
0
Internal
Use Only
0x7D
W
Internal
Use Only
Internal
Use Only
Internal
Use Only
Internal
Use Only
Internal
Use Only
Internal Use Only
0x7E
W
R
0x7F
Internal
Use Only
Internal
Use Only
26
26.1
Used for selecting the SPI bit order and for configuring the SPI TX and IRQ pads.
MSB
Offset
0x00
RW
Bit Number
6
RW
init
LSB
Irq
Driver
Irq
Polarity
SpiTx
Driver
SpiBit
Order
Read/Write
Bits
0
Mnemonic
SpiBitOrder
Prop
Description
RW
brst
SPI
SpiTxDriver
RW
brst
SPI
26
Bits
2
Mnemonic
IrqPolarity
Prop
RW
brst
SPI
Description
SELECT HIGH OR LOW ACTIVE FOR IRQ POLARITY
Purpose: Defines the polarity (high or low active) of the interrupt
request signal.
Values/Settings:
NA_IrqPolarityActiveLow_C
IRQ is low active.
NA_IrqPolarityActiveHigh_C
IRQ is high-active.
Default Value = 0x0
IrqDriver
RW
brst
SPI
(0x0)
(0x1)
26.2
(0x0)
(0x1)
Because only the lower half of the register is used, the configuration of the SPI transfer is always possible
even when the bit order for the nanoLOC chip is unknown. This can be easily seen, for instance, by looking
at the first two bytes (the Instruction and Address bytes) and at the one-byte write transfer to the address
0x00.
Configuring
LSB First
Configuration of Bits 1 to 3
26.3
26
Used for reading the version number of the digital controller as well as for writing a wake-up time value of
one byte. This value is used with WakeUpTimeWe to program the wake-up time.
Note: See 26.4. 0x02 Digital Controller Revision Number and Wake-Up Time on page 120.
MSB
Offset
RW
Bit Number
6
0x01
LSB
Version
init
WakeUpTimeByte
init
Mnemonic
Version
Prop
RO
Description
VERSION NUMBER OF DIGITAL CONTROLLER
Values/Settings:
Default Value = 0x5
Mnemonic
WakeUpTimeByte
Prop
Description
WO
26
26.4
Used for reading the revision number of the digital controller as well as for writing the value of
WakeUpTimeByte to the wake-up time circuitry.
Note: See 26.3. 0x01 Digital Controller Version Number and Wake-Up Time Byte on page 119.
MSB
Offset
RW
Bit Number
6
0x02
LSB
Revision
init
WakeUpTimeWe
W
init
Mnemonic
Revision
Prop
RO
Description
REVISION NUMBER OF DIGITAL CONTROLLER
Values/Settings:
Default Value = 0x1
Mnemonic
WakeUpTimeWe
Prop
WO
brst
SPI
Description
WAKE-UP TIME BYTE SELECTOR
Purpose: Loads the value of RtcWakeUpTimeByte to the appropriate byte of the wake-up time in the wake-up time circuitry.
Values/Settings:
Default Value = 0x0
Note: A 1-0 sequence must be written to this field before changing RtcWakeUpTimeByte. See also 26.3 0x01 Digital Controller Version Number and Wake-Up Time Byte (see page
119).
26.5
26
Used for enabling the voltage comparator function, for setting the voltage comparator value, and for reporting the voltage status of the battery.
Note: The battery management function is completely realized in the analog part of the chip.
MSB
Offset
RW
0x03
init
Batt
Mgmt
Enable
Bit Number
6
LSB
Batt
Mgmt
Compare
BattMgmtThreshold
0
W
init
Read/Write Fields
Bits
1-4
Mnemonic
BattMgmtThreshold
Prop
RW
brst
SPI
Description
BATTERY MANAGEMENT THRESHOLD
Purpose: Sets battery comparator level. These bits set the comparison voltage. The chip checks if the compare value is higher
or lower than the real battery voltage.
Values/Settings:
Voltage
Value
0000
2.15V
0001
2.19V
0010
2.23V
0011
2.27V
0100
2.31V
0101
2.35V
0110
2.39V
0111
2.43V
1000
2.47V
1001
2.51V
1010
2.55V
1011
2.59V
1100
2.63V
1101
2.67V
1110
2.71V
1111
2.75V
Default Value = 0x0
Note: The BattMgmtCompare bit indicates the result of the comparison.
BattMgmtEnable
RW
brst
SPI
26
Mnemonic
BattMgmtCompare
Prop
RO
Description
BATTERY COMPARATOR OUTPUT
Purpose: Reports if the battery voltage is above or below the
value of BattMgmtThreshold.
Values/Settings:
0 = Below
1 = Above
Default Value = 0x0
Note: The read value is valid only if the Battery Comparator is
enabled, that is, when BattMgmtEnable = 1.
26.6
26
The digital IO ports (D0 to D3, pins 19 to 23) can be used as a normal input or to report the occurance of an
alarm. When used as a normal input, the signal level at these ports can be read. When used as a normal
output, a programmable value can be driven out of the chip. When used to report the occurance of an
alarm, They could be used to wake-up the chip. A clock (feature clock) could then be driven out of the chip.
When reading this register, if set as a normal input each bit reports the signal level of the corresponding digital IO port. Otherwise, each bit reports the occurrence of an alarm at the corresponding digital IO port.
When writing to this register, the values are set inside the register. The values first influence one or more
digital IO ports when a write strobe is generated for the desired digital IO port(s) via register 0x05 (see 26.7.
0x05 Write Enable Digital IO Port on page 126). This causes the values in this register to be copied to the
corresponding configuration registers of these digital IO ports.
MSB
Offset
RW
Bit Number
6
LSB
DioInValueAlarmStatus
init
0x04
W
init
Dio
Use
Pulldown
Dio
Use
Pullup
Dio
Alarm
Polarity
Dio
Alarm
Start
DioOut
Value
Alarm
Enable
Dio
Direction
Mnemonic
0-3
DioInValueAlarmStatus
Prop
RO
Description
SIGNAL LEVEL / ALARM STATUS
Purpose: Each bit reports the signal level or the occurrence of
an alarm at one of the four digital IO ports.
Values/Settings:
Bit 0 belongs to D0
Bit 1 belongs to D1
Bit 2 belongs to D2
Bit 3 belongs to D3
Default Value = 0x0
Note: Interpreting the bits make sense only when the corresponding digital IO port is set as an input (DioDirection = 0).
When the digital IO port is used as a normal input (DioOutValueAlarmEnable = 0), then the read value is the signal level at
that port.
When the digital IO port is used to report the occurrence of an
alarm (DioOutValueAlarmEnable = 1), then reading a 1 means
that an alarm has occurred.
26
Mnemonic
DioDirection
DioOutValueAlarmEnable
Prop
Description
WO
brst
SPI
WO
brst
SPI
Values/Settings:
0 = digital IO port is configured as an input
1 = digital IO port is configured as an output
Default Value = 0x0
SET DIGITAL IO AS EITHER AN ALARM INPUT OR AS A VALUE
Purpose: When a digital IO port is set as an input [DioDirection
= 0], this bit reports either the signal level at that port or the
occurrence of an alarm at that port.
When the digital IO port is set as an output (DioDirection = 1),
the value programmed is driven out of the port.
Values/Settings:
0 = Normal input / value to drive out of port
1 = Enable alarm / value to drive out of port
Default Value = 0x0
DioAlarmStart
DioAlarmPolarity
WO
brst
SPI
WO
brst
SPI
Bits
4
Mnemonic
DioUsePullup
Prop
WO
brst
SPI
26
Description
CONNECT A PULL-UP RESISTOR TO THE DIGITAL IO PAD
Purpose: When this bit is set to 1, a pull-up resistor is connected to the corresponding digital IO pad.
Values/Settings:
0 = No pull-up resistor
1 = Use pull-up resistor
Default Value = 0x0
DioUsePulldown
WO
brst
SPI
26
26.7
Used for generating a write strobe for the configuration registers of the digital IO ports (D0 to D3, pins 19 to
23) by software. When the write strobe occurs for one digital IO port, the values programmed in register
0x04 are copied into the corresponding registers of that digital IO. See 26.6. 0x04 Digital IO Controllers
and Digital IO Alarm Status on page 123. When more than one digital IO port should be configured with the
same values, the write strobe for these digital IO ports can be programmed in parallel. The bit position in
this register determines to which digital IO port configuration is written:
RW
Bit Number
LSB
0x05
init
DioPortWe
W
init
Mnemonic
DioPortWe
Prop
WO
brst
SPI
Description
WRITE ENABLE A DIGITAL IO PORT
Purpose: Writes the settings of the following fields to the fields in
the digital IO controller:
DioDirection
DioOutValueAlarmEnable
DioAlarmPolarity
DioAlarmStart
DioUsePullup
DioUsePulldown
Note: A 1-0 sequence must be written to this field before changing register 0x04. Writing a 1-0 sequence to one (or more) bits
of DioPortWe writes the value of 0x4 into the registers of the
associated digital IO pin(s).
26.8
26
Used for selecting the type of power down mode, for configuring the power-up time, and for defining the
event that brings the chip into the power-up state.
MSB
Offset
0x06
RW
RW
Power
Down
Mode
init
Bit Number
6
LSB
PowerUpTime
Enable
Wake
UpDio
Enable
Wake
UpRtc
Read/Write Fields
Bits
0
Mnemonic
EnableWakeUpRtc
Prop
RW
brst
SPI
Description
ENABLE REAL TIME CLOCK AS WAKE-UP SOURCE
Purpose: Enables the Real Time Clock as a wake-up source. It
bring the chip into the power up state.
Values/Settings:
0 = Disable
1 = Enable
Default Value = 0x0
EnableWakeUpDio
RW
brst
SPI
4-6
PowerUpTime
RW
brst
SPI
(0x0)
(0x1)
(0x2)
(0x3)
(0x4)
(0x5)
(0x6)
(0x7)
26
Bits
7
Mnemonic
PowerDownMode
Prop
RW
brst
SPI
Description
SELECT POWER DOWN MODE
Purpose: Selects the power down mode into which the transceiver chip is brought when the chip enters the powered down
state.
Values/Settings:
NA_PowerDownModeFull_C
(0x0)
Pads and transceiver registers are powered off. Reconfiguration of the transceiver registers is required after wake-up, but
the leakage current is the lowest possible in this mode.
NA_PowerDownModePad_C
(0x1)
All output pads are disabled and all bi-directional pads are
switched to input, but all transceiver registers are still powered.
Reconfiguration of the transceiver registers is not required, but
leakage current is higher.
26
26.9
Used for resetting the 32 MHz baseband clock distribution circuitry and the baseband radio control circuitries. It is also used for bringing the chip to configured power-down station.
MSB
Offset
RW
Bit Number
init
Internal
Use Only
Internal
Use Only
init
LSB
2
Reset
BbRadio
Ctrl
Reset
BbClock
Gate
0x07
0
Power
Down
0
Read/Write Fields
Bits
1
Mnemonic
ResetBbClockGate
Prop
RW
brst
SPI
Description
RESET CLOCK GATES
Purpose: Resets the 32 MHz baseband clock distribution circuitry.
Values/Settings:
0 = Inactive reset
1 = Active reset
Default Value = 0x1
ResetBbRadioCtrl
RW
brst
SPI
RESET TRANSCEIVER
Purpose: Resets the digital baseband and digital radio control
circuitries supplied by the 32 MHz baseband clock.
Values/Settings:
0 = Inactive reset
1 = Active reset
Default Value = 0x1
Note: The baseband clock must be started before the reset
takes effect.
Mnemonic
PowerDown
Prop.
WO
brst
SPI
Description
BRING CHIP TO POWERED DOWN STATE
Purpose: Brings the chip to the configured power-down state.
This bit will be automatically cleared when the chip is poweredup.
Values/Settings:
0 = Normal operating mode
1 = Go to power-down state
Default Value = 0x0
26
26.10
Used for selection an optional external oscillator on pad Xtal32MP, the baseband clock distribution, and the
internal baseband quartz oscillator. It is also used for enabling and setting the feature clock frequency.
MSB
Offset
0x08
RW
RW
Enable
Feature
Clock
init
Bit Number
6
Bypass
Bb
Crystal
FeatureClockFreq
LSB
Enable
BbClock
Enable
BbCrystal
Read/Write Fields
Bits
0
Mnemonic
EnableBbCrystal
Prop
RW
SPI
Description
ENABLE BASEBAND CRYSTAL
Purpose: Powers on the internal baseband quartz oscillator.
Values/Settings:
0 = Power off
1 = Power on
Default Value = 0x0
Note: Never switch on the internal oscillator when the external
oscillator is connected to pad Xtal32MP.
EnableBbClock
RW
SPI
BypassBbCrystal
RW
SPI
Bits
4- 6
Mnemonic
FeatureClockFreq
Prop
RW
brst
SPI
26
Description
FEATURE CLOCK FREQUENCY
Purpose: Sets the feature clock frequency. The feature clock
can be routed to one or more digital IO pads. The frequency of
the Feature Clock is calculated by using the 32/2 MHz baseband
clock divided by the setting made here.
Values/Settings:
NA_FeatureClockDiv1_C (16 MHz)
NA_FeatureClockDiv2_C (8 MHz)
NA_FeatureClockDiv4_C (4 MHz)
NA_FeatureClockDiv8_C (2 MHz)
NA_FeatureClockDiv16_C (1 MHz)
NA_FeatureClockDiv32_C (500 kHz)
NA_FeatureClockDiv64_C (250 kHz)
NA_FeatureClockDiv128_C (125 kHz)
Default Value = 0x0
(0x7)
(0x6)
(0x5)
(0x4)
(0x3)
(0x2)
(0x1)
(0x0)
Note: Change the frequency only when the feature clock is disabled (EnableFeatureClock = 0).
7
EnableFeatureClock
RW
brst
SPI
26
26.11
Used for connecting pull-up and pull-down resistors to the four SPI pads: Spiclk, Spissn, Spirxd, and Spitxd.
The values programmed here are applied to the pad when they are written to the corresponding registers
through register 0x0B (see 26.13. 0x0B Writing Pullup/Pulldown Settings to Pads on page 136). The resistors are kept during power-down state.
MSB
Offset
RW
Bit Number
LSB
init
Use
Pulldown
4Spitxd
Use
Pullup
4Spitxd
Use
Pulldown
4Spirxd
Use
Pullup
4Spirxd
Use
Pulldown
4Spissn
Use
Pullup
4Spissn
Use
Pulldown
4Spiclk
Use
Pullup
4Spiclk
init
0x09
Mnemonic
UsePullup4Spiclk
Prop
WO
brst
SPI
Description
CONNECT A PULL-UP RESISTOR TO SPI CLOCK PAD
Purpose: When this bit is set to 1, a pull-up resistor is connected
to the SPI clock pad.
Values/Settings:
0 = No pull-up resistor
1 = Use pull-up resistor
Default Value = 0x0
UsePulldown4Spiclk
WO
brst
SPI
UsePullup4Spissn
WO
brst
SPI
Bits
3
Mnemonic
UsePulldown4Spissn
Prop
WO
brst
SPI
26
Description
CONNECT A PULL-DOWN RESISTOR TO SPI SSN PAD
Purpose: When this bit is set to 1, a pull-down resistor is connected to the SPI Ssn pad, but only when UsePullup4Spissn is
0.
Values/Settings:
0 = No pull-down resistor
1 = Use pull-down resistor
Default Value = 0x0
UsePullup4Spirxd
WO
brst
SPI
UsePulldown4Spirxd
WO
brst
SPI
UsePullup4Spitxd
WO
brst
SPI
UsePulldown4Spitxd
WO
brst
SPI
26
26.12
Used for connecting the pull-up or the pull-down resistors to the four pads: /POnReset, Pamp, CIrq, and
CReset. The values programmed here are applied to the pad when they are written to the corresponding
registers through register 0x0B (see 26.13. 0x0B Writing Pullup/Pulldown Settings to Pads on page 136).
The resistors are kept during power-down state.
MSB
Offset
RW
Bit Number
LSB
init
Use
Pulldown
4Ucrst
Use
Pullup
4Ucrst
Use
Pulldown
4Ucirq
Use
Pullup
4Ucirq
Use
Pulldown
4Pamp
Use
Pullup
4Pamp
Use
Pulldown
4Por
Use
Pullup
4Por
init
0x0A
Mnemonic
UsePullup4Por
Prop
WO
brst
SPI
Description
CONNECT A PULL-UP RESISTOR TO POR PAD
Purpose: When this bit is set to 1, a pull-up resistor is connected
to the POR pad.
Values/Settings:
0 = No pull-up resistor
1 = Use pull-up resistor
Default Value = 0x0
UsePulldown4Por
WO
brst
SPI
UsePullup4Pamp
WO
brst
SPI
UsePulldown4Pamp
WO
brst
SPI
Bits
4
Mnemonic
UsePullup4Ucirq
Prop
WO
brst
SPI
26
Description
CONNECT A PULL-UP RESISTOR TO UCIRQ PAD
Purpose: When this bit is set to 1, a pull-up resistor is connected
to the ucIRQ pad.
Values/Settings:
0 = No pull-up resistor
1 = Use pull-up resistor
Default Value = 0x0
UsePulldown4Ucirq
WO
brst
SPI
UsePullup4Ucrst
WO
brst
SPI
UsePulldown4Ucrst
WO
brst
SPI
26
26.13
Used for writing the settings made in registers 0x09 and/or 0x0A to the appropriate pads on the chip.
Because the destination registers are running with the 32.768 kHz clock, the write strobe has to be active
for at least 30.6 ms.
Note: A write strobe must always be generated by programming a 1-0-sequence to this register. Do NOT
change the content of registers 0x09 (see 26.11. 0x09 Setting SPI Pads as Pullup or Pulldown on
page 132) and 0x0A (see 26.12. 0x0A Setting Additional Pads as Pullup or Pulldown on page 134)
when one of the bits of this register is active.
MSB
Offset
RW
Bit Number
LSB
Write
Pulls
4Pads
Write
Pulls
4Spi
R
init
0x0B
W
init
Mnemonic
WritePulls4Spi
Prop
WO
brst
SPI
Description
WRITE PULL-UP AND PULL-DOWN SETTINGS TO FOUR SPI PADS
Purpose: Writes the SPI pad settings (see register 0x9) to the
appropriate chip pads.
Purpose:
0 = True
1 = False
Default Value = 0x0
WritePulls4Pads
WO
brst
SPI
26.14
26
Nanotron internal use only. During normal operations, this register must be set to 0.
MSB
Offset
0x0C
RW
Bit Number
6
RW
init
LSB
2
26
26.15
Nanotron internal use only. During normal operations, this register must be set to 0.
MSB
Offset
0x0D
RW
Bit Number
6
RW
init
LSB
2
26.16
26
Used together to selecting pages of the baseband RAM, the correlator memory, or the chirp sequencer
RAM, which are then mapped into the Device Window.
0x0E
RW
Bit Number
6
RW
LSB
2
DeviceSelect
init
0
RamIndex
Read/Write Fields
Bits
0-1
Mnemonic
RamIndex
Prop.
RW
brst
SPI
Description
SELECT PAGE IN BASEBAND MEMORY
Purpose: Selects one page of selected memory type (see
DeviceSelect below) to be mapped into accessible SPI address
space. When addresses are greater than 0xFF, the higher bits
have to be written to this field.
Values/Settings:
To select a baseband RAM page, select one of:
Baseband RAM block 0
(0x0)
Baseband RAM block 1
(0x1)
Baseband RAM block 2
(0x2)
Baseband RAM block 3
(0x3)
To select a chirp sequencer (CSQ) RAM column, select one of:
Column 0
(0x0)
Column 1
(0x1)
Column 2
(0x2)
Unused
(0x3)
For correlator memory, select one of:
I (RamD3IPatI)
(0x0)
Q (RamD3IPatQ)
(0x1)
Thresholds (RamD3IThresholds)
(0x2)
Unused
(0x3)
Default Value = 0x0
Note: Register access to locations < 0x80 are not influenced by
index settings.
4-5
DeviceSelect
RW
brst
SPI
26
26.17
Used for selecting sources (LO, baseband timer, receiver, transmitter) that drive an external interrupt when
an event occurs. It is also used for reporting the occurance of an interrupt event for one of the enabled
receive/transmit interrupts.
0x0F
Bit Number
RW
LoIrq
Status
BbTimer
IrqStatus
RxIrq
Status
TxIrq
Status
init
LSB
LoIrq
Enable
BbTimer
Irq
Enable
RxIrq
Enable
TxIrq
Enable
W
init
Read/Write Fields
Bits
0
Mnemonic
TxIrqEnable
RxIrqEnable
BbTimerIrqEnable
LoIrqEnable
Prop
RW
brst
SPI
Description
ENABLE TRANSMITTER INTERRUPT
Values/Settings:
0 = Disable
TX interrupt does not drive the interrupt line.
1 = Enable
TX interrupt drives the interrupt line.
Default Value = 0x0
RW
brst
SPI
RW
brst
SPI
RW
brst
SPI
ENABLE LO INTERRUPT
Values/Settings:
0 = Disable
RX interrupt does not drive the interrupt line.
1 = Enable
RX interrupt drives the interrupt line.
Default Value = 0x0
Values/Settings:
0 = Disable
BbTimer interrupt does not drive the interrupt line.
1 = Enable
BbTimer interrupt drives the interrupt line.
Default Value = 0x0
Values/Settings:
0 = Disable
LO interrupt does not drive the interrupt line.
1 = Enable
LO interrupt drives the interrupt line.
Default Value = 0x0
26
Mnemonic
TxIrqStatus
Prop
RO
Description
TRANSMITTER INTERRUPT EVENT STATUS
Purpose: Reports the occurance of one or more of the enabled
transmitter interrupts.
Values/Settings:
0 = Event did not trigger
This bit is cleared when an enabled (via register 0x13) transmitter interrupt is either cleared via register 0x10 or disabled
via register 0x13.
1 = Event is triggered
This bit is 1 when one or more of the enabled (via register
0x13) transmitter interrupts have occurred. Their raw status is
reported in register 0x10.
Default Value = 0x0
RxIrqStatus
RO
BbTimerIrqStatus
RO
LoIrqStatus
RO
26
26.18
Used for reporting the TX raw interrupt status of the transmitter and for clearing the interrupt status of the
corresponding source.
MSB
Offset
RW
Bit Number
6
0x10
LSB
2
TxIntsRawStat
init
0
TxIntsReset
W
init
Mnemonic
TxIntsRawStat
Prop
RO
brst
BbClk
Description
TRANSMITTER INTERRUPT RAW STATUS
Purpose: Reports the TX raw interrupt of each source.
Values/Settings:
See Bit Offsets (Indexes) section below.
Mnemonic
TxIntsReset
Prop
WO
brst
strb
BbClk
Description
TRANSMITTER INTERRUPT RESET
Purpose: Clears the interrupt status of the
corresponding source.
Values/Settings:
See Bit Offsets (Indexes) section below.
26
Bit Number
6
Index
Bits
0-1
TxTime
SlotEnd
TxTime
SlotTOut
Tx
Under
run
TxEnd
Interrupt
TxBufferRdy
LSB
1
TxBufferRdy
Description
TRANSMIT BUFFER READY
Purpose: Indicates that the appropriate buffer has been transmitted and
can, therefore, be filled with raw data, if necessary.
Values/Settings:
Default Value = 0x0
Note: The LSB (bit 0x00) is related to the lower half of the TX buffer (TxRx
buffer when using a combined buffer TxRxBbBufferMode1), while the
MSB (bit 0x01) is related to the upper half of the TX Buffer.
2
TxEnd
TRANSMIT END
Purpose: Indicates that the transmission has ended.
Values/Settings:
Default Value = 0x0
Note: Conditions for successful transmissions are as follows:
If ArqScheme is used for transmission (TxArq = 1) and TxArqCnt
TxArqMax, then the transmission was successful.
If ArqScheme is used for transmission (TxArq = 1) and TxArqCnt >
TxArqMax, then the transmission was not successful.
If ArqScheme is not used for transmission (TxArq =0), then transmission
was always successful.
TxUnderrun
TxTimeSlotTOut
26
Bits
5
Interrupt
TxTimeSlotEnd
Description
TRANSMIT TIME SLOT END
Purpose: Indicates that the transmit time slot has ended.
Values/Settings:
Default Value = 0x0
Note: Interrupt is defined only if TxTimeSlotControl = 1.
26
26.19
Used for reporting the RX raw interrupt status of the receiver and for clearing the interrupt status of the corresponding source.
MSB
Offset
RW
Bit Number
6
0x11
LSB
RxIntsRawStat
init
0
RxIntsReset
W
init
Mnemonic
RxIntsRawStat
Prop
RO
brst
BbClk
Description
RECEIVER INTERRUPT RAW STATUS
Purpose: Reports the RX raw interrupt of each source.
Values/Settings:
See Bit Offsets (Indexes) section below.
Mnemonic
RxIntsReset
Prop
WO
brst
strb
BbClk
Description
Reset Receiver Interrupt
Purpose: Clears the interrupt status of the corresponding
source.
Values/Settings:
See Bit Offsets (Indexes) section below.
26
Bit Number
Index
RxTime
SlotEnd
RxTime
SlotTOut
RxOverflow
Rx
Header
End
RxEnd
Bits
1-0
LSB
Interrupt
RxBufferRdy
RxBufferRdy
Description
RECEIVE BUFFER READY
Purpose: Indicates that the appropriate receive buffer is filled with data
and can be read out.
Values/Settings:
Default Value = 0x0
Note: The LSB (0x00) is related to the lower half of the RX buffer (TxRx
buffer when using a combined buffer TxRxBbBufferMode1), while the
MSB (0x01) is related to the upper half of the RX buffer.
RxEnd
RxHeaderEnd
RxOverflow
Bits
5
Interrupt
RxTimeSlotTOut
26
Description
RECEIVE TIME SLOT TIME-OUT
Purpose: Indicates that the receive process exceeded the time slot and
that the transmission of Clr2s or Ack packets was aborted automatically.
Values/Settings:
Default Value = 0x0
Note: Interrupt is defined only if RxTimeSlotControl = 1.
RxTimeSlotEnd
26
26.20
Used for storing the LO interrupt of a triggered event and for clearing the interrupt status of the corresponding source. It is also used for resetting the baseband timer interrupt or for stopping the baseband timer.
MSB
Offset
RW
Bit Number
6
LSB
R
init
Clear
Base
band
Timer
Int
init
0x12
LoInts
RawStat
Internal
Use Only
LoInts
Reset
Internal
Use Only
Mnemonic
LoIntsRawStat
Prop
RO
brst
BbClk
Description
LOCAL OSCILLATOR INTERRUPT RAW STATUS
Purpose: Stores the LO interrupt of a triggered event.
Values/Settings:
See Bit Offsets (Indexes) section below.
Mnemonic
LoIntsReset
Prop
WO
brst
strb
BbClk
Description
Reset Local Oscillator interrupt
Purpose: Clears the interrupt status of the
corresponding source.
Values/Settings:
See Bit Offsets (Indexes) section below.
ClearBasebandTimerInt
WO
brst
strb
BbClk
26
Bit Number
6
LSB
Index
Bits
1
Interrupt
LoTuningReady
Lo
Tuning
Ready
Internal
Use Only
Description
LOCAL OSCILLATOR TUNING READY
Purpose: Indicates that the tuning algorithm for the LO has finished.
Values/Settings:
Default Value = 0x0
26
26.21
Used for enabling the different transmitter interrupt sources to control TxIrqStatus in register 0x0F (see
26.17. 0x0F LO, BBTimer, RX/TX IRQ Event Status and Enabling on page 140).
Write Only Fields
MSB
Offset
RW
Bit Number
LSB
R
init
0x13
TxIntsEn
W
init
Bits
0-5
Mnemonic
Prop
TxIntsEn
WO
brst
BbClk
Description
ENABLE TRANSMITTER INTERRUPT
Purpose: Enables the different TX interrupt sources to control
TxIrqStatus.
Values/Settings:
See Bit Offsets (Indexes) section below.
Bit Number
6
Index
Bits
0-1
TxTime
SlotEnd
TxTime
SlotTOut
Tx
Under
run
TxEnd
Interrupt
TxBufferRdy
LSB
1
TxBufferRdy
Description
TRANSMIT BUFFER READY
Purpose: Indicates that the appropriate buffer has been transmitted and
can be filled with data.
Values/Settings:
Default Value = 0x0
Note: The LSB (bit 0x00) is related to the lower half of the TX buffer (TxRx
buffer when using a combined buffer TxRxBbBufferMode1), while the
MSB (bit 0x01) is related to the upper half of the TX buffer.
Bits
2
Interrupt
TxEnd
26
Description
TRANSMIT END
Purpose: Indicates that the transmission has ended.
Values/Settings:
Default Value = 0x0
Note: Conditions for a successful transmission are as follows:
If ArqScheme is used for transmission (TxArq = 1) and TxArqCnt TxArqMax, then the transmission was successful.
If ArqScheme is used for transmission (TxArq = 1) and TxArqCnt > TxArqMax, then the transmission was not successful.
If ArqScheme is not used for transmission (TxArq =0) then transmission
was always successful.
TxUnderrun
TxTimeSlotTOut
TxTimeSlotEnd
26
26.22
Used for enabling the different receiver interrupt sources to control RxIrqStatus in register 0x0F (see 26.17.
0x0F LO, BBTimer, RX/TX IRQ Event Status and Enabling on page 140).
MSB
Offset
RW
Bit Number
LSB
R
init
0x14
RxIntsEn
W
init
Mnemonic
Prop
RxIntsEn
WO
brst
BbClk
Description
ENABLE RECEIVER INTERRUPT
Purpose: Enables the different RX interrupt sources to control
the combined RxIrqStatus.
Values/Settings:
See Bit Offsets (Indexes) section below.
Bit Number
Index
RxTime
SlotEnd
RxTime
SlotTOut
RxOver
flow
Rx
Header
End
RxEnd
Bits
1-0
LSB
Interrupt
RxBufferRdy
RxBufferRdy
Description
RECEIVE BUFFER READY
Purpose: Indicates that the appropriate receive buffer is filled with data
and can be read out.
Values/Settings:
Default Value = 0x0
Note: The LSB (0x00) is related to the lower half of the RX buffer (TxRx
buffer when using a combined buffer TxRxBbBufferMode1), while the
MSB (0x01) is related to the upper half of the RX buffer.
Bits
2
Interrupt
RxEnd
26
Description
END OF PACKET RECEPTION
Purpose: Indicates that end of a correct packet was detected.
Values/Settings:
Default Value = 0x0
Note: This interrupt depends on the settings of RxCrc2Mode field and
RxArqMode field in register 0x5A.
RxHeaderEnd
RxOverflow
RxTimeSlotTOut
RxTimeSlotEnd
26
26.23
Used for enabling the different LO interrupt sources to control the combined LoIrqStatus in register 0x0F
(see 26.17. 0x0F LO, BBTimer, RX/TX IRQ Event Status and Enabling on page 140).
MSB
Offset
RW
Bit Number
LSB
LoIntsEn
Internal
Use Only
R
init
0x15
W
init
Mnemonic
Prop
LoIntsEn
WO
Description
ENABLE LOCAL OSCILLATOR INTERRUPT
Purpose: Enables the different LO interrupt sources to control
the combined LoIrqStatus.
Values/Settings:
See Indexes section below.
Bit Number
6
LSB
Index
Bits
1
Interrupt
LoTuningReady
Lo
Tuning
Ready
Internal
Use Only
Description
LOCAL OSCILLATOR TUNING READY
Purpose: Indicates that the tuning algorithm for the LO has finished.
Values/Settings:
Default Value = 0x0
26.24
26
Used for reading the 22 switchable capacitors of the Local Oscillator after tuning as well as for setting the 22
switchable capacitors of the Local Oscillator for the RX frequencies.
Note: To save time, the capacitor values for receive can be read after the adjustment has been performed.
After following a power-down and wake-up, these values can be written to the register instead of
adjusting the Local Oscillator again.
MSB
Offset
0x16
RW
LSB
LoRxCapsValue
0
RW
LoRxCapsValue
init
0x18
RW
init
0x17
Bit Number
RW
LoRxCapsValue
init
Read/Write Fields
Bits
0-21
Mnemonic
LoRxCapsValue
Prop
RW
brst
BbClk
Description
READ OR WRITE THE CAPS VALUE FOR RX
Purpose: Reads or writes the 22 capacitors of the Local Oscillator for receive frequency. The correct capacitor values can be
read after the Local Oscillator has been tuned.
Values/Settings:
Default Value = 0x200040
26
26.25
Used for reading the 22 switchable capacitors of the Local Oscillator after tuning as well as for setting the 22
switchable capacitors of the Local Oscillator for the TX frequencies.
Note: To save time, the capacitor values for transmit can be read after the adjustment has been performed.
After following a power-down and wake-up, these values can be written to the register instead of
adjusting the Local Oscillator again.
MSB
Offset
0x19
RW
LSB
LoTxCapsValue
0
RW
LoTxCapsValue
init
0x1B
RW
init
0x1A
Bit Number
RW
LoTxCapsValue
init
Read/Write Fields
Bits
0-21
Mnemonic
LoTxCapsValue
Prop
RW
brst
BbClk
Description
READ OR WRITE THE CAPS VALUE FOR TX
Purpose: Reads or writes the 22 capacitors of the Local Oscillator for transmit frequency. The correct capacitor values can
be read after the Local Oscillator has been tuned.
Values/Settings:
Default Value = 0x200040
26.26
26
Used for tuning the LO capacitors to the target frequency and for setting the level of accuracy of the tuning.
It is also used for accelerating the LO caps tuning, for enabling auto-recalibration of the LO caps, and for
switching between TX and RX caps for LO caps tuning.
MSB
Offset
RW
Bit Number
LSB
init
Use
Lo
RxCaps
Internal
Use Only
Lo
Enable
Lsb
Neg
init
0x1C
Lo
Enable
Fast
Tuning
LoFastTuningLevel
Mnemonic
LoEnableFastTuning
Prop
WO
brst
BbClk
Description
ENABLE ACCELERATED LO CAPS TUNING
Purpose: Enables an algorithm that speeds up the tuning of the
LO capacitors to the target frequency.
Values/Settings:
0 = Normal tuning
1 = Accelerated tuning
Default Value = 0x0
1-3
LoFastTuningLevel
WO
brst
BbClk
LoEnableLsbNeg
WO
brst
BbClk
26
Bits
7
Mnemonic
UseLoRxCaps
Prop
WO
brst
BbClk
Description
SELECT RX OR TX CAPS
Purpose: Switch between TX and RX Caps for LO caps tuning.
Values/Settings:
0 = Use TX caps
1 = Use RX caps
Default Value = 0x0
Note: This field must be set before starting the LO caps tuning.
26.27
26
Used for setting the target value for the LO center frequency, which is used for adjusting either the RX or TX
Local Oscillator frequency.
MSB
Offset
0x1D
RW
RW
LSB
2
LoTargetValue
init
0x1E
Bit Number
RW
LoTargetValue
init
Read/Write Fields
Bits
0-16
Mnemonic
LoTargetValue
Prop
WO
brst
BbClk
Description
TARGET VALUE FOR CENTER FREQUENCY
Purpose: 16 bit target value for the Local Oscillator frequency
adjustment. This value is used to determines the target LO
center frequency.
The LOTargetValue is determined as follows:
( { LOdiv10 ( 16MHz ) } 12 ) 8192
Values/Settings:
Before setting this value, the following must be enabled:
Local Oscillator EnableLO
Clock divider EnableLOdiv10
Also, the appropriate mode (RX, TX) must be selected using
the UseLoRxCaps:
UseLoRxCaps = 1 (RX mode)
UseLoRxCaps = 0 (Tx mode)
Note: A write operation to the upper byte starts the tuning algorithm automatically.
26
26.28
RW
Bit Number
LSB
0x1F
init
W
AgcThresHold1
init
Mnemonic
AgcThresHold1
Prop
WO
brst
BbClk
Description
SET AGC THRESHOLD1
Purpose: Sets the lower level of the integration value.
Values/Settings:
Default Value = 0x3
26.29
26
Used with AgcThresHold1 for setting the upper threshold of the integration value.
MSB
Offset
RW
Bit Number
LSB
0x20
init
W
AgcThresHold2
init
Mnemonic
AgcThresHold2
Prop
WO
brst
BbClk
Description
SET AGC THRESHOLD2
Purpose: AgcThresHold1 plus the value set in this register is
used to determine the upper level of the integration value.
Values/Settings:
Default Value = 0x6
26
26.30
Used for enabling or disabling the AGC stop and for defining a delay from the bit synchronization state until
the AGC stop is enabled in bit synchronized state.
MSB
Offset
RW
Bit Number
LSB
init
Hold
Agc
InFrame
Sync
init
0x21
HoldAgcInBitSync
Mnemonic
HoldAgcInBitSync
Prop
WO
brst
BbClk
Description
RF AGC HOLD BIT SYNCHRONIZATION CONTROL
Purpose: When in bit synchronization state, gain is not
changed (AGC is stopped) after a programmable number of
pulses are received.
Values/Settings:
Default Value = 0x18
HoldAgcInFrameSync
WO
brst
BbClk
26
26.31
RW
Bit Number
LSB
0x22
init
W
AgcNregLength
init
Mnemonic
AgcNregLength
Prop
WO
brst
BbClk
Description
AGC CHANGE GAIN LENGTH
Purpose: Sets the gain change mode. When the AGC has
changed (N-1) times during the last N rounds in the same
direction, then fast AGC tuning is restarted.
Values/Settings:
00: N=5
01: N=7
1X: N=10
Default Value = 0x0
26
26.32
RW
Bit Number
LSB
0x23
init
W
AgcIntTime
init
0x24
init
AgcIntTime
W
init
Mnemonic
AgcIntTime
Prop
WO
brst
BbClk
Description
AGC INTEGRATION TIME
Purpose: Sets the number of cycles for AGC integration.
Values/Settings:
Default Value = 0x200
Note: One cycle is equal to LO frequency divided by 20.
26.33
26
RW
Bit Number
LSB
0x25
init
W
AgcValue
init
Bits
0-7
Mnemonic
AgcValue
Prop
WO
brst
BbClk
Description
SET AGC VALUE
Purpose: When AgcHold and AgcDefaultEn are set to 1 this
value is used for the RX amplifiers.
Values/Settings:
This field must be set to 0x23
26
26.34
Used for setting the RSSI threshold value and for reading the RSSI voltage value.
MSB
Offset
RW
Bit Number
6
RSSI
init
Internal
Use Only
init
0x26
LSB
AgcRssiThres
0
Mnemonic
RSSI
Prop
RO
brst
BbClk
Description
READS THE RSSI FOR CURRENT PACKET
Purpose: The RX gain used for the current packet can be read
after the packet header end interrupt.
Note: Auto Mode only
Mnemonic
AgcRssiThres
Prop
WO
brst
BbClk
Description
RF RSSI THRESHOLD
Purpose: When gain is below this threshold, media is interpreted as busy when the upper bit
TxPhCarrSenseMode field is set to 1.
Values/Settings:
Default Value = 0x1A
26.35
26
Used for initiating an FCT (Filter Caps Tuning) count cycle and for switching on the FCT generator. It is also
used for switching the capacitors of the baseband low-pass filter, for enabling the amplitude of the transmitter and for reading the FCT counter. See also 21.1. Adjusting the Baseband Filter Frequency on page 83.
MSB
Offset
RW
Bit Number
6
LSB
FctPeriod
init
Enable
Tx
init
0x27
Start
Fct
Measure
Fct
ClockEn
ChirpFilterCaps
Mnemonic
FctPeriod
Prop
RO
brst
BbClk
Description
RF TX FCT COUNTER
Purpose: Reports the return value from tuning. It counts the
amount of 16 MHz clock periods during a FCT clock cycle.
Values/Settings:
Default Value = 0x0
Mnemonic
ChirpFilterCaps
Prop
WO
brst
BbClk
Description
RF TX CHIRP FILTER CAPACITORS
Purpose: Switches the capacitors of the chirp filter to adjust the
FCT clock to 400 kHz.
Values/Settings:
Default Value = 0x06
FctClockEn
WO
brst
BbClk
ENABLE RF TX FCT
Purpose: Switches on the FCT generator. This is required for
the chirp filter calibration.
Values/Settings:
0 = Disable
1 = Enable
Default Value = 0x0
26
Bits
5
Mnemonic
StartFctMeasure
Prop
WO
brst
BbClk
Description
SET RF TX FCT MEASUREMENT
Purpose: Starts the tuning algorithm. It initiates an FCT count
cycle.
Values/Settings:
0 = Ignore
1 = Start algorithm
Default Value = 0x0
Note: FctClockEn must be set to 1 before starting the measurement cycle.
EnableTx
WO
brst
BbClk
ENABLE RF TX
Purpose: Enables the transmitter for tuning. It manually starts
the transmitter.
Values/Settings:
0 = Disable manual starting of TX
1 = Manual starting of TX
Default Value = 0x0
26.36
26
Used for setting the start value of the baseband timer. The baseband timer is running with
1 MHz. It starts when the upper byte of BasebandTimerStartValue is written. The baseband timer is stopped
when the timer has expired or when writing ClearBasebandTimerInt.
MSB
Offset
RW
Bit Number
6
LSB
R
0x28
BasebandTimerStartValue
init
R
0x29
BasebandTimerStartValue
init
Read/Write Fields
Bits
0-15
Mnemonic
BasebandTimerStartValue
Prop
WO
brst
BbClk
Description
BASEBAND TIMER START VALUE
Purpose: Sets the start value of the timer. The interrupt
BbTimerInt is triggered if the timer reaches zero. The timer
starts automatically when the upper byte is written to the register.
Values/Settings:
Default Value = 0x0
Note: Timer tick period is 1 s. Timer values range from 1 to
65535.
26
26.37
Used for reporting the Time of Arrival Offset of a received Ack packet, and for reporting if the time measurement is valid for the Ack packet.
MSB
Offset
0x2A
0x2B
RW
Bit Number
6
LSB
ToaOffsetMeanAck
init
Toa
Offset
Mean
AckValid
init
ToaOffsetMeanAck
Mnemonic
ToaOffsetMeanAck
Prop
RO
BbClk
Description
TOA OFFSET FOR RECEIVED ACK PACKET
Purpose: Reports the Time of Arrival Offset of a received Ack
packet.
Values/Settings:
Default Value = 0x0
15
(7)
ToaOffsetMeanAckValid
RO
BbClk
26.38
26
Used for reporting the round trip time of a transmitted Data packet and of a received Ack packet.
MSB
Offset
0x2C
RW
LSB
2
TxRespTime
init
0x2D
Bit Number
TxRespTime
init
Mnemonic
TxRespTime
Prop
RO
BbClk
Description
TX RESPONSE ROUND TRIP TIME
Purpose: Reports the response time of the transmission of a
Data packet and the reception of the corresponding Acknowledgement (one round trip).
Values/Settings:
Default Value = 0x0
26
26.39
Used for reporting the phase offset for received Data and Ack packets.
MSB
Offset
0x2E
RW
Bit Number
6
LSB
2
PhaseOffsetData
init
PhaseOffsetAck
0
Mnemonic
PhaseOffsetAck
Prop
RO
BbClk
Description
PHASEOFFSET FOR RECEIVED ACK PACKET
Purpose: Reports the phase offset of a received Ack packet.
Values/Settings:
Default Value = 0x0
4-6
PhaseOffsetData
RO
BbClk
26.40
26
Used for reporting the Time of Arrival of a received Data packet, and for reporting if enough pulses were
received to provide a valid time measurement.
MSB
Offset
0x2F
0x30
RW
Bit Number
6
LSB
ToaOffsetMeanData
init
Toa
Offset
Mean
Data
Valid
init
ToaOffsetMeanData
Mnemonic
ToaOffsetMeanData
Prop
Description
RO
BbClk
15
(7)
ToaOffsetMeanDataValid
RO
BbClk
26
26.41
Used for defining the SyncWord, which is used for frame synchronization during reception (correlation).
MSB
Offset
0x2A
RW
SyncWord
1
SyncWord
1
SyncWord
1
SyncWord
init
0x31
SyncWord
init
0x30
init
0x2F
SyncWord
init
0x2E
init
0x2D
LSB
SyncWord
init
0x2C
W
init
0x2B
Bit Number
SyncWord
init
Mnemonic
SyncWord
Prop
WO
brst
BbClk
Description
SET TRANSCEIVER SYNCWORD
Purpose: Defines the synchronization word which is used for
frame synchronization.
Values/Settings:
Default Value = 0x0xAB69CA9492D52CAB
Usage: Auto and transparent mode.
This register must be defined before:
TxCmdStart = True or RxCmdStart = True
26.42
26
Used for reporting the status of CRC1 and CRC2 checks, and for reporting the stored status of the address
matching circuitry and the received packet type.
MSB
Offset
0x31
Bit Number
RW
RxCrc2
Stat
RxCrc1
Stat
init
LSB
RxAddrMatch
0
RxPacketType
0
Mnemonic
RxPacketType
Prop
RO
brst
BbClk
Description
RECEIVED PACKET TYPE
Purpose: Stores the received packet type.
Values/Settings:
Data packet = 0x0
TimeB packet = 0x2
Broadcast packet = 0x3
Note: Valid only when the RxHeaderEnd event is triggered.
Usage: Auto mode only.
4-5
RxAddrMatch
RO
brst
BbClk
26
Bits
6
Mnemonic
RxCrc1Stat
Prop
RO
brst
BbClk
Description
STATUS OF CRC1 CHECK (FOR MAC HEADER)
Purpose: Reports the status of the CRC1 check.
Values/Settings:
0 = CRC1 check has failed
1 = CRC1 check was successful
Default Value = 0x0
Note: Valid only when the RxHeaderEnd event is triggered.
This register just makes sense for TimeB packets when
RxTimeBCrc1Mode == NA_RxTimeBCrc1ModeOn_BC_C.
Usage: Auto mode only.
RxCrc2Stat
RO
brst
BbClk
26.43
26
Used for defining the maximum allowed bit errors when a received pattern is correlated to the
SyncWord. It is also used for reading the number of bit errors occurred during SyncWord correlation.
MSB
Offset
RW
Bit Number
6
LSB
2
0x32
RxCorrBitErr
init
RxCorrErrThres
init
Mnemonic
RxCorrBitErr
Prop
RO
brst
BbClk
Description
NUMBER OF SYNCWORD ERRORS
Purpose: Reports the number of bit errors that have occurred
during Syncword correlation.
Values/Settings:
Default Value = 0x0
Note: Register is valid when the RxHeaderEnd event is triggered.
Usage: Auto mode only.
Mnemonic
RxCorrErrThres
Prop
WO
brst
BbClk
Description
MAXIMUM ALLOWABLE SYNCWORD ERRORS
Purpose: It defines the threshold for bit errors allowed during
the correlation of a received pattern against the Syncword
stored in register 0x2A (SyncWord). If the occurred bit errors
are equal to or less than RxCorrErrThres, then the receiver
synchronizes.
Values/Settings:
Allowed values are between 0 and 15.
Default Value = 0x3
This register must be defined before:
RxCmdStart = True
Usage: Auto and transparent mode.
26
26.44
Used for defining the beginning of the time slot for a transmission.
MSB
Offset
0x33
RW
LSB
2
TxTimeSlotStart
init
0x34
Bit Number
TxTimeSlotStart
init
Mnemonic
TxTimeSlotStart
Prop
WO
brst
BbClk
Description
SET TRANSMIT TIME SLOT START
Purpose: Defines the beginning of the time slot for a transmission. Used with TxTimeSlotControl.
Values/Settings:
Only the 16 LSBs of the RTC value are compared to
TxTimeSlotStart. If both values are equal, then the time slot
begins.
Default Value = 0x0
This register must be defined before:
TxCmdStart = True.
Usage: Auto mode only.
26.45
26
Used for defining the end of the time slot for a transmission.
MSB
Offset
0x35
RW
LSB
TxTimeSlotEnd
init
0x36
Bit Number
TxTimeSlotEnd
init
Mnemonic
TxTimeSlotEnd
Prop
WO
brst
BbClk
Description
SET TRANSMIT TIME SLOT END
Purpose: Defines the end of the time slot for a transmission.
Used with TxTimeSlotControl.
Values/Settings:
Only the 16 LSBs of the RTC value are compared to
TxTimeSlotEnd. If both values are equal, then the time slot
ends.
This register must be defined before:
TxCmdStart = True
Usage: Auto mode only.
26
26.46
Used for reporting the status of End Station and Intermediate Station address matching, as well as for
reporting the value of the three encryption control fields: CryptEn, CryptID, and CryptSeqN.
MSB
Offset
0x33
RW
RxCrypt
SeqN
init
Bit Number
6
RxCrypt
En
RxCryptId
LSB
RxAddr
Seg
IsMatch
RxAddr
Seg
EsMatch
Mnemonic
RxAddrSegEsMatch
Prop
RO
brst
BbClk
Description
RX ADDRESS SEGMENT END STATION (ES) MATCH
Purpose: Shows the status of the segmented address match of
end station address part.
Values/Settings:
0 = End Station address does not match
1 = End Station address matches
Default Value = 0x0
RxAddrSegIsMatch
RO
brst
BbClk
RxCryptEn
RO
brst
BbClk
5-6
RxCryptId
RO
brst
BbClk
Bits
7
Mnemonic
RxCryptSeqN
Prop
RO
brst
BbClk
26
Description
VALUE OF CRYPTSEQN BIT
Purpose: Reads the value of the one bit sequential numbering
scheme for encryption.
The receiver compares the last received against the present
CryptSeqN bit and increments its crypt clock value by one, if
they are not identical.
Values/Settings:
Default Value = 0x0
Note: Valid when the RxHeaderEnd event is triggered.
26
26.47
0x34 to 0x35 Receive FEC Single Bit Error Count (Read Only)
Used for reporting the number of single bit errors that have occurred in a received packet.
MSB
Offset
0x34
RW
LSB
RxFec1BitErr
init
0x35
Bit Number
0
RxFec1BitErr
init
Mnemonic
RxFec1BitErr
Prop
RO
brst
BbClk
Description
NUMBER OF CORRECTED FEC ERRORS
Purpose: Reports the number of correctable single bit errors
that have occurred in a receive packet.
Values/Settings:
Default Value = 0x0
Note: Register is valid when the event RxEnd is triggered and
when UseFec == UseFecOn.
Usage: Auto mode only.
26.48
26
0x36
RW
Bit Number
LSB
R
init
26
26.49
Used for enabling TX time slot control (TDMA) and RX time slot control (TDMA).
MSB
Offset
RW
Bit Number
LSB
RxTime
Slot
Control
TxTime
Slot
Control
R
init
0x37
W
init
Mnemonic
TxTimeSlotControl
Prop
WO
brst
BbClk
Description
ENABLE TX TIME SLOT CONTROL (TDMA)
Purpose: Enables the TX time slot control so that packets are
transmitted only during the defined TX time slot.
Values/Settings:
0 = Disabled
Packets are transmitted independent of the time slot.
1 = Enabled
Packets are transmitted only during the defined TX time slot.
Default Value = 0x0
This register must be defined before:
TxCmdStart = True
Usage: Auto mode only.
RxTimeSlotControl
WO
brst
BbClk
26.50
26
Used for reporting the start time slot for receiving a packet by reading the 16 LSBs of the RTC value on a
header end event.
MSB
Offset
0x38
RW
LSB
RxPacketSlot
init
0x39
Bit Number
RxPacketSlot
init
Mnemonic
RxPacketSlot
Prop
Description
RO
brst
BbClk
Values/Settings:
Default Value = 0x0
Note: Register is valid when the RxHeaderEnd event is triggered.
Usage: Auto mode only.
26
26.51
0x38 to 0x39 RX Time Slot Start and Packet Slot (Write Only)
Used for defining the start time slot for a reception as well as for reading the 16 LSBs of the RTC value on a
header end event.
MSB
Offset
0x38
RW
LSB
RxTimeSlotStart
init
0x39
Bit Number
RxTimeSlotStart
init
Mnemonic
RxTimeSlotStart
Prop
Description
WO
brst
BbClk
Values/Settings:
Default Value = 0x0
Note: Only the 16 LSBs of the RTC value are compared to
RxTimeSlotStart. If both values are equal, the time slot
begins.
This register must be defined before:
RxCmdStart = True
Usage: Auto mode only.
26.52
26
Used for defining the end of the time slot for reception.
MSB
Offset
RW
Bit Number
LSB
0x3A
init
W
RxTimeSlotEnd
init
0x3B
init
W
RxTimeSlotEnd
init
Mnemonic
RxTimeSlotEnd
Prop
WO
brst
BbClk
Description
SET RECEIVE TIME SLOT END
Purpose: Defines the end of the time slot for a reception. Used
with RxTimeSlotControl.
Values/Settings:
Default Value = 0x0
Values/Settings:
Note: Only the 16 LSBs of the RTC value are compared to
RxTimeSlotEnd. If both values are equal, the time slot ends.
This register must be defined before:
RxCmdStart = True
Usage: Auto mode only.
26
26.53
0x3C ARQ
Used for setting the maximum value for packet retransmissions and for reporting the ARQ retransmission
counter value.
MSB
Offset
RW
Bit Number
6
LSB
2
0x3C
TxArqCnt
init
TxArqMax
init
Mnemonic
TxArqCnt
Prop
RO
brst
BbClk
Description
TRANSMITTER ARQ COUNT (REQUIRED RETRANSMISSIONS)
Purpose: Reports the required number of retransmissions.
Values/Settings:
Default Value = 0x0
Note: The following conditions are used to determine if the
transmission was successful or unsuccessful:
If TxArqCnt <= TxArqMax, then the transmission was successful.
If TxArqCnt > TxArqMax, then the transmission was not
successful.
Mnemonic
TxArqMax
Prop
WO
brst
BbClk
Description
TRANSMIT ARQ MAXIMUM
Purpose: Sets the maximal value for packet retransmissions.
Values/Settings:
The maximal allowed value is 14.
This register must be defined before:
TxCmdStart = True
Usage: Auto mode only.
26
26.54
Used for providing settings for the chirp generator and for accessing the Chirp Sequencer RAM.
MSB
Offset
RW
Bit Number
LSB
init
Internal
Use Only
Csq
UseRam
Csq
Mem
AddrInit
Csq
Asy
Mode
Csq
Use
4Phases
CsqUse
Phase
Shift
init
0x3D
CsqDitherValue
Mnemonic
CsqDitherValue
Prop
WO
brst
BbClk
Description
CHIRP SEQUENCER DITHER VALUE
Purpose: Provides a dither function, which is used to delay
transmission based on settings made to this field. Each cycle is
equal to the frequency of LO div 20.
Values/Settings:
0 = No delay
1 = delay is 0 or 1 cycle (distribution 1:1)
2 = delay is 0, 1, or 2 cycles (distribution 1:1:1)
3 = delay is 0, 1, or 2 cycles (distribution 2:1:1)
Default Value = 0x0
CsqUsePhaseShift
WO
brst
BbClk
CsqUse4Phases
WO
brst
BbClk
26
Bits
4
Mnemonic
CsqAsyMode
Prop
WO
brst
BbClk
Description
SET ASYMMETRIC MODE
Purpose: When enabled, the Chirp Sequencer RAM is
addressed asymmetrically.
Values/Settings:
0 = Disable (access symmetrically: address increment AND
decrement)
1 = Enable (access increment only)
Default Value = 0x0
CsqMemAddrInit
WO
brst
strb
BbClk
CsqUseRam
WO
brst
BbClk
26.55
26
RW
Bit Number
LSB
init
Internal
Use Only
Internal
Use Only
init
0x3E
26
26.56
Used for setting the digital correlator in either FIX or MAP mode as well as for enabling POM detection
mode.
MSB
Offset
RW
Bit Number
LSB
init
Internal
Use Only
D3lPom
En
D3lFixn
Map
init
0x3F
D3lPomLen
0
Mnemonic
D3lFixnMap
Prop
WO
brst
BbClk
Description
USE FIX OR MAP MODE
Purpose: Sets either FIX or MAP mode in the Correlator. FIX
mode is default.
Values/Settings:
0 = Use MAP mode
1 = Use FIX mode
Default Value = 0x1
Note: MAP mode (D3lFixnMap = 0) only works when
FdmaEnable is disabled (set to 0), that is 80 MHz only. When
using 22 MHz (FdmaEnable = 1), FIX mode (D3lFixnMap =
1) must be used.
D3lPomEn
WO
brst
BbClk
2-3
D3lPomLen
WO
brst
BbClk
26
26.57
Switch back from MAP or FIX threshold1 to FIX threshold 0 detection in bitsync state when the in
LeaveMapThresh1InBitsync programmed number of bits has passed without the transceiver has reached
FrameSync state. The selection between MAP and FIX Threshold detection is programmed via Register
D3lFixnMap.
UseMapThresh1InFramesync is used to select the detection mode after the FrameSync state is reached.
MSB
Offset
RW
Bit Number
LSB
init
UseMap
Thresh1
InFrame
sync
init
0x40
LeaveMapThresh1InBitsync
Mnemonic
LeaveMapThresh1InBitsync
Prop
WO
brst
BbClk
Description
SWITCH BACK TO FIX MODE WITH THRESHOLD 0
Purpose: Switch back to FIX mode using correlator
threshold 0 in bit synchronization state after programmed
number of detected pulses.
Values/Settings:
Default Value = 0x3
UseMapThresh1InFramesync
WO
brst
BbClk
26
26.58
Used for setting the number of detected pulses (in bit synchronization state) before switching to either MAP
mode or FIX mode using correlator threshold 1.
MSB
Offset
RW
Bit Number
LSB
init
Internal
Use Only
init
0x41
Go2MapThresh1InBitsync
0
Mnemonic
Go2MapThresh1InBitsync
Prop
WO
brst
BbClk
Description
SWITCH TO FIX MODE WITH THRESHOLD1 OR MAP MODE
Purpose: Switch from FIX mode using correlator threshold 0
to either MAP mode or FIX mode using correlator threshold 1
(D3LFixnMap) after programmed number of detected pulses
in bit synchronization state.
Values/Settings:
Default Value = 0x7
26.59
26
Used for enabling the Local Oscillator, the LO divider, the chirp sequencer clock, and the external power
amplifier control pin.
MSB
Offset
RW
Bit Number
LSB
init
Internal
Use Only
Internal
Use Only
Internal
Use Only
Enable
ExtPA
Invert
RxClock
Enable
Csq
Clock
Enable
LOdiv10
Enable
LO
init
0x42
Mnemonic
EnableLO
Prop
WO
brst
BbClk
Description
ENABLE RF LOCAL OSCILLATOR
Purpose: Enables the Local Oscillator.
Values/Settings:
0 = Disable
1 = Enable
Default Value = 0x0
Note: Required only for tuning the Local Oscillator and for programming the Chirp Sequencer (CSQ) RAM.
EnableLOdiv10
WO
brst
BbClk
EnableCsqClock
WO
brst
BbClk
26
Bits
3
Mnemonic
InvertRxClock
Prop
WO
brst
BbClk
Description
CHANGING SAMPLING EDGE FOR RECEIVER
Note: It is recommended that this not be change. Use the
default value.
Values/Settings:
0 = Disable
1 = Enable
Default Value = 0x0
EnableExtPA
WO
brst
BbClk
26
26.60
Used for adjusting the frequency of the LNA response, and for adjusting the power amplifier bias current.
MSB
Offset
RW
Bit Number
LSB
0x43
init
TxPaBias
W
init
LnaFreqAdjust
0
Mnemonic
LnaFreqAdjust
Prop
WO
brst
BbClk
Description
ADJUST RF RECEIVER LNA FREQUENCY
Purpose: Frequency adjustment of the LNA (Low Noise Amplifier) frequency response (S21).
Values/Settings:
111b Shift the middle frequency of the LNA frequency
response to lower frequencies
000b Shift the middle frequency of the LNA frequency
response to higher frequencies
Default Value = 0x3 (recommended)
4-6
TxPaBias
WO
brst
BbClk
26
26.61
Used for setting the RF transmitter output power for Data, TimeB (time beacon), and Brdcast (broadcast)
packets.
MSB
Offset
RW
Bit Number
LSB
0x44
init
TxOutputPower0
W
init
Mnemonic
TxOutputPower0
Prop
WO
brst
BbClk
Description
ADJUST RF TX OUTPUT POWER 0
Purpose: Sets the transmitter output power for data (Data)
packets, time beacon (TimeB) packets, and broadcast (BrdCast) packets.
Values/Settings:
Default Value = 0x3F
26.62
26
Used for setting the RF Transmitter output power for Ack (acknowledgments), Req2S (request to send), and
Clr2S (clear to send) packets.
MSB
Offset
RW
Bit Number
LSB
0x45
init
TxOutputPower1
W
init
Mnemonic
TxOutputPower1
Prop
WO
brst
BbClk
Description
ADJUST RF TX OUTPUT POWER 1
Purpose: Sets the transmitter output power for acknowledgement packets (Ack), request to send (Req2S) packets, and
clear to send (Clr2S) packets.
Values/Settings:
Default Value = 0x3F
26
26.63
Used for programming the quantization threshold for the 5bit ADC for In-Phase value.
MSB
Offset
RW
Bit Number
LSB
0x46
init
RfRxCompValueI
W
init
Mnemonic
RfRxCompValueI
Prop
WO
brst
BbClk
Description
QUANTIZATION THRESHOLD FOR I
Values/Settings:
Default Value = 0xF
26.64
26
Used for programming the quantization threshold for the 5bit ADC for Quadrature-Phase value.
MSB
Offset
RW
Bit Number
LSB
0x47
init
RfRxCompValueQ
W
init
Mnemonic
RfRxCompValueQ
Prop
WO
brst
BbClk
Description
QUANTIZATION THRESHOLD FOR Q
Values/Settings:
Default Value = 0xF
26
26.65
Used for determining the transmission behavior, including setting the symbol duration and the symbol rate,
as well as for setting a 2ary modulation system.
MSB
Offset
RW
Bit Number
LSB
init
Internal
Use Only
init
0x48
SymbolRate
1
SymbolDur
0
Mnemonic
SymbolDur
Prop
WO
BbClk
Description
SET SYMBOL DURATION
Purpose: Set symbol duration between 500 ns and 4000 ns.
Values/Settings:
NA_SymbolDur500ns_C
NA_SymbolDur1000ns_C
NA_SymbolDur2000ns_C
NA_SymbolDur4000ns_C
Default Value = 0x3
4-6
SymbolRate
WO
BbClk
(0x0)
(0x1)
(0x2)
(0x3)
(0x0)
(0x1)
(0x2)
(0x6)
(0x7)
26.66
26
Used for selecting the CRC2 type and for enabling the CRC2 encryption. It is also used for selecting the
encryption/decryption clock mode and for enabling FEC.
Note: For more information on CRC types, see 18.2. Cyclic Redundancy Check (CRC) on page 75.
MSB
Offset
RW
Bit Number
LSB
TxRx
CryptCrc2
Mode
Use
Fec
R
init
0x49
W
TxRxCryptClkMode
init
Crc2Type
Mnemonic
Crc2Type
Prop
WO
brst
BbClk
Description
SELECT TRANSCEIVER CRC2 TYPE
Purpose: Selects the CRC2 used for reception and transmission. Cyclic Redundancy Checking and generation is calculated over the data field.
Values/Settings:
Select CRC Type 1 (ISO/IEC3309):
NA_Crc2Type1_VC_C(0x0)
NA_Crc2Type1Bits_IC_C(0x10)
Select CRC Type 2 (IEC 60870-5-1):
NA_Crc2Type2_VC_C(0x1)
NA_Crc2Type2Bits_IC_C(0x10)
Select CRC Type 3 (CCITT-32):
NA_Crc2Type3_VC_C(0x2)
NA_Crc2Type3Bits_IC_C(0x20)
Default Value = 0x0
This register must be defined before:
TxCmdStart = True or RxCmdStart = True
Usage: Auto mode only.
26
Bits
2
Mnemonic
UseFec
Prop
WO
brst
BbClk
Description
ENABLE FORWARD ERROR CORRECTION (FEC)
Purpose: Purpose: Enables the forward error correction. Error
correction is applied to the complete MAC frame using a (7,4)
block code.
Values/Settings:
NA_UseFecOff_BC_C(0x0)
Disables FEC.
NA_UseFecOn_BC_C(0x1)
Enables FEC.
Default Value = 0x0
This register must be defined before: TxCmdStart = True or
RxCmdStart = True
Usage: Auto mode only.
TxRxCryptCrc2Mode
WO
brst
BbClk
4-7
TxRxCryptClkMode
WO
brst
BbClk
26.67
26
Used for setting the Baseband buffer mode (Duplex or Simplex) and the MACFrame mode (Auto or Transparent). It is also used for enabling FDMA which uses 22 MHz bandwidth and for swapping RX and TX
baseband buffers.
MSB
Offset
RW
Bit Number
LSB
init
TxRx
Mode
TxRxBb
Buffer
Mode0
TxRxBb
Buffer
Mode1
init
0x4A
Fdma
Enable
0
SwapBb
Buffers
Read/Write Fields
Bits
0
Mnemonic
SwapBbBuffers
Prop
RW
brst
BbClk
Description
EXCHANGE RX AND TX BASEBAND BUFFERS
Purpose: Exchanges the buffers between the baseband transmitter and receiver. When enabled, if a station is set up as an
intermediate station (IS), the station does not have to move
data from the RX buffer to the TX buffer.
Values/Settings:
0 = Default
Data in buffers belong to their intended direction.
1 = Enable data swapping
Data for the transmit operation are taken from the receive
buffer, while data of the receive operation are stored in transmit buffer.
Default Value = 0x0
Note: This is useful only in duplex mode.
See also: TxRxBbBufferMode1
26
Mnemonic
TxRxBbBufferMode1
Prop
WO
brst
BbClk
Description
BASEBAND BUFFER MODE 1: DUPLEX OR SIMPLEX
Purpose: Sets the data buffer for TX and RX as either two blocks
(Duplex) or a single block (Simplex).
Values/Settings:
NA_TxRxBufferMode1Duplex_BC_C
(0x0)
Sets Duplex mode
In this mode, the data buffer is split into two blocks, one for TX
and one for RX. TX and RX buffer operations are independent
of each other.
NA_TxRxBufferMode1Simplex_BC_C
(0x1)
Sets Simplex mode.
In this mode, the complete buffer is used for TX and RX.
Default Value = 0x0
Note: Buffer size and configuration depend on the combination
of TxRxBbBufferMode0 and TxRxBbBufferMode1.
TxRxBbBufferMode0
WO
brst
BbClk
FdmaEnable
WO
brst
BbClk
ENABLES FDMA
Purpose: Enables FDMA (Frequency Division Multiple Access),
which uses 22 MHz bandwidth. When disabled, 80 MHz bandwidth is used.
Values/Settings:
0 = Disable
1 = Enable
Default Value = 0x1
Bits
7
Mnemonic
TxRxMode
Prop
WO
brst
BbClk
26
Description
MACFRAME MODE: AUTO AND TRANSPARENT
Purpose: When using auto mode, the MACFrame is built as a
nanoLOC MACFrame that includes MAC header information as
well as payload data. When using transparent mode, the complete MACFrame is considered data.
Values/Settings:
NA_TxRxModeAuto_BC_C
(0x0)
Sets Auto mode.
In this mode, each MACFrame is built with a MAC header and
payload data. For TX, software need only deliver the bytes for
the data part, while for RX only the data part is returned to software.
NA_TxRxModeTransparent_BC_C
(0x1)
Sets Transparent mode.
In this mode, the complete MACFrame is interpreted as data.
For TX, software delivers all bytes of the MACFrame, while for
RX all bytes are returned to software.
Default Value = 0x0
26
26.68
In a 2ary system, each bit (whose possible values are either 0 or 1) is represented as a chirp pulse.
ChirpMatrix0 selects the type of chirp pulse which represents the value 0. ChirpMatrix1 selects the type of
chirp pulse that represents the value 1.
The pulse types include Upchirp, Downchirp, Folded Minus Pulse, Plus Folded Pulse, and Off Chirp. See
also Pulse Types on page 208.
MSB
Offset
RW
Bit Number
LSB
0x4B
init
ChirpMatrix1
W
init
ChirpMatrix0
0x4C
init
ChirpMatrix3
W
init
ChirpMatrix2
0
Pulse Types
For each of ChirpMatrix0, ChirpMatrix1, ChirpMatrix2, and ChirpMatrix3, select one of the pulse types as
listed in the following table.
To Set Pulse Type
Hex Value
Downchirp
NA_ChirpDown_VC_C
0x0
Upchirp
NA_ChirpUp_VC_C
0x1
NA_ChirpFoldMinus_VC_C
0x2
NA_ChirpFoldPlus_VC_C
0x3
Off Chirp
NA_ChirpOff_VC_C
0x4
26
Mnemonic
ChirpMatrix0
Prop
WO
brst
BbClk
Description
SET PULSE TYPE FOR VALUES 0
Values/Settings:
Select pulse type (see table above)
Default Value = 0x0
This register must be defined before:
TxCmdStart = True or RxCmdStart = True
4-6
ChirpMatrix1
WO
brst
BbClk
26
26.69
Used for setting the value of symbol 0 or 1 in the MACFrame Preamble and Tail. It is also used for enabling
the aborting of a transmission through the use of the TxCmdStop command, as well as for Disabling waiting
for CIFS (Common InterFrame Switching time). I
RW
Bit Number
LSB
init
TxMac
CifsDis
init
0x4D
TxUnder
run
Ignore
0
TxPreTrailMatrix1
TxPreTrailMatrix0
Write Fields
Bits
0-1
Mnemonic
TxPreTrailMatrix0
Prop
WO
brst
BbClk
Description
VALUE FOR SYMBOL 0 IN PREAMBLE AND TAIL (TRAIL)
Purpose: Sets the value of symbol 0 in the
MACFrame Preamble and Tail.
Values/Settings:
Symbol used in TxRxChirpMatrix0
Symbol used in TxRxChirpMatrix1
Symbol used in TxRxChirpMatrix3
Symbol used in TxRxChirpMatrix3
Default Value = 0x0
(0x0)
(0x1)
(0x2)
(0x3)
Bits
2-3
Mnemonic
TxPreTrailMatrix1
Prop
WO
brst
BbClk
26
Description
VALUE FOR SYMBOL 1 IN PREAMBLE AND TAIL (TRAIL)
Purpose: Sets the value of symbol 1 in the
MACFrame Preamble and Tail.
Values/Settings:
Symbol used in TxRxChirpMatrix0
Symbol used in TxRxChirpMatrix1
Symbol used in TxRxChirpMatrix3
Symbol used in TxRxChirpMatrix3
Default Value = 0x1
(0x0)
(0x1)
(0x2)
(0x3)
TxUnderrunIgnore
WO
brst
BbClk
TX UNDERRUN IGNORE/AUTO-ABORT
Purpose: When a transmission underrun occurs, if this bit is
enabled, the underrun error will be ignored and the transmission
can continue or software can abort the transmission. If this bit is
disabled, transmission is aborted automatically when a transmission underrun occurs.
Values/Settings:
0 = Disable
Transmission aborts automatically.
1 = Enable
Transmission does not abort automatically. It must be aborted
by the command TxCmdStop.
Default Value = 0x1
TxMacCifsDis
WO
brst
BbClk
26
26.70
Used for enabling virtual carrier sensing (with or without Ack packets), as well for enabling physical carrier
sensing using either RSSI or chirp detection. It is also used for enabling ARQ, which uses acknowledgements, a three-way handshake mechanism (to avoid collisions and eliminate hidden node problems), and
a back-off mechanism for fair medium access.
MSB
Offset
RW
Bit Number
LSB
init
TxFrag
Prio
TxBack
OffAlg
Tx3Way
TxArq
TxVCarr
SensAck
init
0x4E
TxPhCarr
SenseMode
0
TxVCarr
Sens
0
Mnemonic
TxVCarrSens
Prop
WO
brst
BbClk
Description
VIRTUAL CARRIER SENSING
Purpose: Virtual Carrier Sensing calculates the end of the current transmission based on information taken from the received
header.
When this carrier sense method is enabled, the NAV (Network
Allocation Vector) is calculated using the packet type and
Length field of received packets. Also, the transmitter suspends
medium access until the NAV expires.
Values/Settings:
NA_TxVCarrSensOff_BC_C
NA_TxVCarrSensOn_BC_C
Default Value = 0x0
(0x0)
(0x1)
Bits
Mnemonic
Prop
1-2
TxPhCarrSenseMode
WO
brst
BbClk
26
Description
PHYSICAL CARRIER SENSING MODE: RSSI OR
CHIRP DETECTION
Purpose: Physical carrier sensing uses either RSSI or chirp
symbol detection. Using RSSI, if AgcGain is lower than
AgcRssiThreshold, then the carrier is busy. Using the other
method, if a chirp is detected, then the carrier is busy.
Physical carrier sensing mode can be based either on chirp
detection, RSSI threshold, or both chirp detection and RSSI
threshold.
Values/Settings:
NA_TxPhCarrSensModeOff_VC_C
(0x0)
Physical carrier sensing is not applied.
NA_TxPhCarrSensModeSymbols_VC_C
(0x1)
Physical carrier sensing is based on chirp symbol detection.
NA_TxPhCarrSensModeRssi_VC_C
(0x2)
Physical carrier sensing is based on an RSSI threshold.
NA_TxPhCarrSensModeSymbolsRssi_VC_C
(0x3)
Physical carrier sensing is based on both symbol detection
and RSSI threshold.
This register must be defined before:
TxCmdStart = True.
Usage: Auto and transparent mode.
TxVCarrSensAck
WO
brst
BbClk
(0x0)
(0x1)
TxArq
WO
brst
BbClk
26
Bits
5
Mnemonic
Tx3Way
Prop
WO
brst
BbClk
Description
THREE-WAY HANDSHAKE
Purpose: The three-way handshake uses a Req2S and Clr2S
mechanism. It is only used with Data packets. It is not used with
Brdcast and TimeB packets.
Values/Settings:
NA_Tx3WayOff_BC_C
Three-way handshake is disabled.
NA_Tx3WayOn_BC_C
Three-way handshake is enabled.
(0x0)
(0x1)
TxBackOffAlg
WO
brst
BbClk
BACK-OFF ALGORITHM
Purpose: The exponential back-off algorithm waits a specific
period of time before reattempting a transmission.
Values/Settings:
NA_TxBackOffAlgOff_BC_C
(0x0)
Back-off algorithm is disabled. The complete seed is taken
(see TxBackoffSeed) and the seed is not modified.
NA_TxBackOffAlgOn_BC_C
(0x1)
Back-off algorithm is enabled. The number of bits taken from
seeds are increased by one when a transmission is not
acknowledged.A random value of 3 bit size is taken for the first
transmission.
This register must be defined before:
TxCmdStart = True.
Usage: Auto mode only.
TxFragPrio
WO
brst
BbClk
FRAGMENTATION PRIORITIZATION
Purpose: Enables fragmentation prioritization scheme used in
the back-off time algorithm.
Values/Settings:
0 = Disable
The MSB of the back-off counter is set with the MSB from the
random value.
1 = Enable
Sets the MSB of the Back-Off counter to value zero (higher
priority).
Default Value = 0x0
This register must be defined before:
TxCmdStart = True.
Usage: Auto mode only.
26.71
26
Used for setting the back-off seed, which is either the start value of the random number generator for exponential back-off or the number of back-off slots which has to pass by before next media access will be
attempted.
MSB
Offset
RW
Bit Number
LSB
0x4F
init
W
TxBackOffSeed
init
Mnemonic
TxBackOffSeed
Prop
WO
brst
BbClk
Description
BACK-OFF SEED
Purpose: Sets either the start value of the random number generator for exponential back-off or the number of the back-off
slots.
Values/Settings:
If TxBackOffAlg = TxBackOffAlgOn, then this sets the seed
value for the pseudo-number generator. It can be set for every
packet and improves the random properties of exponential
Back-Off. .
If TxBackOffAlg = TxBackOffAlgOff, then this sets the number
of Back-Off slots before the next media access will start.
Note: It is not mandatory to set this register.
Usage: Auto mode only.
26
26.72
Used for resetting the internally stored values of the CryptSeqN bits (one for each key), which are then compared to the programmed TxCryptSeqN bit after a key has been selected and encryption starts. When the
compared bits are unequal, the crypt clock used for encryption is incremented. This register is also used for
enabling transmission encryption security and to select a secret key, as well as and for enabling a one bit
sequential numbering scheme for encryption.
MSB
Offset
RW
Bit Number
LSB
init
TxCrypt
SeqN
init
0x50
TxCrypt
En
TxCryptId
0
TxCryptSeqReset
0
Mnemonic
TxCryptSeqReset
Prop
WO
brst
strb
BbClk
Description
TX DECRYPTION SEQUENCE RESET
Purpose: Resets the last transmitted SeqN bit independently for
each key.
Values/Settings:
TxCryptSeqReset[TxCryptId] When one of these bits is set to
1, the internally stored CryptSeqN bit for the corresponding key
is reset to 0.
Note: The internally stored CryptSeqN bits (4 for TX and 4 for
RX) are always zero after reset (/POnReset or Baseband
Reset).
TxCryptEn
WO
brst
BbClk
ENCRYPTION SWITCH
Purpose: Enables the encryption security feature of the chip,
which uses a 32 bit clock value, a 48 bit address, and a 128 bit
secret key to generate the encryption cipher. This sets the
CryptEn bit in the MACFrame.
Values/Settings:
0 = Disable
1 = Enable
Default Value = 0x0
This register must be defined before:
TxCmdStart = True
Usage: Auto mode only.
Bits
5-6
Mnemonic
TxCryptId
Prop
WO
brst
BbClk
26
Description
SECRET KEY SELECTION FOR ENCRYPTION
Purpose: Selects one of four secret keys as well as one of the
four TX crypt clocks, which are found in page 1 of the baseband
RAM. It is only used for Data packets, Brdcast packets and
TimeB packets as only data is encrypted and other packet types
have no data fields.
Values/Settings:
Select first secret key
Select second secret key
Select third secret key
Select fourth secret key
(0x0)
(0x1)
(0x2)
(0x3)
See also: 0.
This register must be defined before:
TxCmdStart = True
Usage: Auto mode only.
7
TxCryptSeqN
WO
brst
BbClk
26
26.73
Used for enabling scrambling of TX packets and for initializing the bit scrambler.
MSB
Offset
RW
Bit Number
LSB
init
Tx
Scramb
En
init
0x51
TxScrambInit
Mnemonic
TxScrambInit
Prop
WO
brst
BbClk
Description
TX SCRAMBLING INITIALIZATION
Purpose: Initializes the value for the scrambling unit.
Values/Settings:
Default Value = 0x7F
Note: Do NOT program TxScrambInit with 0x00.
Note: There is no need to initialize the scrambler for each
packet.
This register must be defined before:
TxCmdStart = True
Usage: Auto mode only.
TxScrambEn
WO
brst
BbClk
TRANSMISSION SCRAMBLING
Purpose: Enables scrambling in a transmitted
MACFrame.
Values/Settings:
0 = Disable
Value 0 is intended for debugging purposes only.
1 = Enable
Default Value = 0x1
Note: To randomize the data from highly redundant patterns,
scrambling must be enabled during normal operations.
This register must be defined before:
TxCmdStart = True
Usage: Auto mode only.
26.74
26
Used for setting the number of data bytes for transmission in Transparent mode.
MSB
Offset
RW
Bit Number
LSB
0x52
init
W
TxTransBytes
init
0x53
init
TxTransBytes
W
init
Write Fields
Bits
0-12
Mnemonic
TxTransBytes
Prop
WO
brst
BbClk
Description
NUMBER OF DATA BYTES IN TX MACFRAME IN TRANSPARENT
MODE
Purpose: When the transceiver is set in Transparent mode, this
sets the number of bytes of data in the completed MACFrame
that is ready for transmission. These are all bytes between the
Syncword and the Tail.
Values/Settings:
Default Value = 0x0
This register must be defined before:
TxCmdStart = True
Usage: Transparent mode only.
26
26.75
Used for storing the type of packet that will be transmitted, and for selecting as the source address of the
packet, which is either Station Address 0 (StaAddr0) or Station Address 1 (StaAddr1).
MSB
Offset
RW
Bit Number
LSB
init
TxAddr
Slct
init
0x54
TxPacketType
0
Mnemonic
TxPacketType
Prop
WO
brst
BbClk
Description
PACKET TYPE FOR TRANSMISSION IN AUTO MODE
Purpose: Stores the type of packet to be transmitted. Only Data
packets, TimeB packets, and Broadcast packets can be
selected.
Values/Settings:
NA_TypeCodeData_VC_C
NA_TypeCodeTimeB_VC_C
NA_TypeCodeBrdcast_VC_C
(0x0)
(0x2)
(0x3)
TxAddrSlct
WO
brst
BbClk
26.76
26
Used for starting and stopping the transmitter and for setting a command that indicates that the lower subblock and/or upper subblock of the TX buffer is ready for transmission.
MSB
Offset
RW
Bit Number
LSB
TxCmd
Start
TxCmd
Stop
R
init
0x55
TxBufferCmd
W
init
Mnemonic
TxCmdStop
Prop
WO
brst
strb
BbClk
Description
STOP TRANSMISSION
Purpose: This interrupts the current transmission by aborting the
transmission of a packet (in Auto mode) or stops/disables the
transmission (in Transparent mode). It also resets the transmit
buffer state.
Values/Settings:
0 = Default
1 = Stop transmission
Default Value = 0x0
TxCmdStart
WO
brst
strb
BbClk
START TRANSMISSION
Purpose: Starts the configured transmission. It initiates the
transmission of a packet (in Auto mode) or starts the transmission of data (in Transparent mode).
Values/Settings:
0 = Default
1 = Start transmission
Default Value = 0x0
2-3
TxBufferCmd
WO
brst
strb
BbClk
LSB
MSB
26
26.77
Used for starting and stopping the receiver and for setting a command that indicates that the lower subblock
and/or upper subblock of the RX buffer is empty and ready for a received packet.
MSB
Offset
RW
Bit Number
LSB
RxCmd
Start
RxCmd
Stop
R
init
0x56
RxBufferCmd
W
init
Mnemonic
RxCmdStop
Prop
WO
brst
strb
BbClk
Description
STOP CURRENT RECEPTION
Purpose: This interrupts the current reception by aborting the
reception of a packet (in Auto mode) or stops/disables the reception (in Transparent mode). It also resets the receive buffer
state.
Values/Settings:
0 = Default
1 = Stop reception
Default Value = 0x0
RxCmdStart
WO
brst
strb
BbClk
RxBufferCmd
WO
brst
strb
BbClk
LSB
MSB
26.78
26
Used for resetting the internally stored values of the CryptSeqN bits (one for each key; received in the last
packet using the same key) which are compared to the currently received RxCryptSeqN (part of the MAC
header) bit. When the compared bits are unequal, then the crypt clock used for decryption is incremented
before generating the cipher.
MSB
Offset
RW
Bit Number
LSB
0x57
init
RxCryptSeqReset
W
init
Mnemonic
RxCryptSeqReset
Prop
WO
brst
strb
BbClk
Description
RX DECRYPTION SEQUENCE RESET
Purpose: Resets the last received SeqN bit independently for
each key.
Values/Settings:
RxCryptSeqReset[RxCryptId] When one of these bits is set
to 1, the internally stored CryptSeqN bit for the corresponding
key is reset to 0.
Note: The internally stored CryptSeqN bits (4 for TX and 4 for
RX) are always zero after reset (/POnReset or Baseband
Reset).
26
26.79
RW
Bit Number
LSB
0x58
init
W
RxTransBytes
init
0x59
init
RxTransBytes
W
init
Mnemonic
RxTransBytes
Prop
WO
brst
BbClk
Description
NUMBER OF DATA BYTES IN RECEIVED MACFRAME IN TRANSPARMODE
ENT
26.80
26
Used for enabling address matching for End Stations and Intermediate Stations, for enabling CRC1 checking on TimeB packets, and for enabling CRC2 checking on received Data, TimeB and Broadcast packets. It
is also used for configuring the format of a segmented address by setting the length of the DeviceID.
Note: For more information on CRC types, see 18.2. Cyclic Redundancy Check (CRC) on page 75.
MSB
Offset
RW
Bit Number
LSB
RxAddr
Seg
IsMode
RxAddr
Seg
EsMode
RxCrc2
Mode
RxTimeB
Crc1
Mode
R
init
0x5A
W
RxAddrSegDevIdL
init
RxArqMode
Mnemonic
RxTimeBCrc1Mode
Prop
WO
brst
BbClk
Description
CRC1 MODE FOR TIMEB PACKETS
Purpose: TimeB packets that have failed CRC1 checks can
either be received by ignoring the failed CRC1 check, or a failed
CRC1 check will cause the reception to terminate. The status of
the CRC1 check is reported in the register RxCrc1Stat.
Values/Settings:
NA_RxTimeBCrc1ModeOff_BC_C
(0x0)
Failed CRC1 check terminates reception.
NA_RxTimeBCrc1ModeOn_BC_C
(0x1)
Receive TimeB packets and ignore failed CRC1 check.
Default Value = 0x1
RxCrc2Mode
WO
brst
BbClk
26
Bits
2-3
Mnemonic
RxArqMode
Prop
WO
brst
BbClk
Description
RX ARQ (AUTOMATIC REPEAT REQUEST) MODE FOR DATA PACKETS
RxAddrSegEsMode
WO
brst
BbClk
RxAddrSegIsMode
WO
brst
BbClk
Bits
6-7
Mnemonic
RxAddrSegDevIdL
Prop
WO
brst
BbClk
Description
SEGMENTED ADDRESS FORMAT
Purpose: Configures the format of a segmented address by
defining the length of the Device ID. Possible lengths include 2,
6, 10, and 14 bits. A segmented address is always 48 bits and
can be configured as follows:
Device ID
Subnet ID
ISubnet ID
IG/UL
22
22
20
20
10
18
18
14
16
16
Values/Settings:
Device ID = 2 bits
Device ID = 6 bits
Device ID = 10 bits
Device ID = 14 bits
26
(0X0)
(0X1)
(0X2)
(0X3)
26
26.81
Used for enabling the reception of Data packets, Broadcast packets, and TimeB packets. It is also used for
setting the address mode for Data packets, as either Address Matching Mode or Promiscuous Mode. It is
also used for setting the number of up and down pulses, which are used for determining the ToA average
when performing ranging measurements.
MSB
Offset
RW
Bit Number
LSB
Rx
Addr
Mode
Rx
TimeB
En
Rx
Brdcast
En
Rx
DataEn
R
init
0x5B
W
RangingPulses
init
Mnemonic
RxDataEn
Prop
WO
brst
BbClk
Description
DATA PACKET RECEPTION
Purpose: Enables the reception of Data packets.
Values/Settings:
NA_RxDataOff_BC_C
Data packets are discarded.
NA_RxDataOn_BC_C
Data packets are received.
Default Value = 0x1
(0x0)
(0x1)
RxBrdcastEn
WO
brst
BbClk
(0x0)
(0x1)
Bits
2
Mnemonic
RxTimeBEn
Prop
WO
brst
BbClk
26
Description
TIMEB PACKET RECEPTION
Purpose: Enables reception of TimeB packets.
Values/Settings:
NA_RxTimeBOff_BC_C
TimeB packets are discarded.
NA_RxTimeBOn_BC_C
TimeB packets are received.
(0x0)
(0x1)
RxAddrMode
WO
brst
BbClk
26
26.82
RW
Bit Number
LSB
0x5C
init
PulseDetDelay
W
init
Mnemonic
PulseDetDelay
Prop
WO
brst
BbClk
Description
DELAY TUNING FOR PULSE DETECTION
Purpose: Tunes the delay in the correlator.
Values/Settings:
Default Value = 0x5
26.83
26
Used for disabling the detection of up pulses (Upchirps) and/or down pulses (Downchirps), and for setting
the required number of consecutive pulses needed to be outside of the gate center before a readjustment of
the gate occurs.
MSB
Offset
RW
Bit Number
LSB
Up
Pulse
Detect
Dis
Down
Pulse
Detect
Dis
R
init
0x5D
W
init
GateAdjThreshold
Mnemonic
GateAdjThreshold
Prop
WO
brst
BbClk
Description
GATE ADJUST THRESHOLD
Purpose: Because of clock drifting, the detected pulse can run
out of center of the gate. This sets the required number of consecutive pulses outside of the gate center before a readjustment of the gate takes place.
Values/Settings:
Default Value = 0x7
This register must be defined before:
RxCmdStart = True
DownPulseDetectDis
WO
brst
BbClk
UpPulseDetectDis
WO
brst
BbClk
26
26.84
Used for setting the size of the bit detection gate for unsynchronized state, for bit synchronization state, and
for frame synchronized state. It is also used for enabling the adjustment of the detection gate in bit synchronization state and frame synchronization state.
MSB
Offset
RW
Bit Number
LSB
init
GateAdj
Frame
syncEn
GateAdj
Bitsync
En
init
0x5E
GateSizeFramesync
GateSizeBitsync
GateSizeUnsync
Mnemonic
GateSizeUnsync
Prop
WO
brst
BbClk
Description
GATE SIZE FOR UNSYNCHRONIZED STATE
Purpose: Sets the size of the detection gate in the baseband
clock cycles for the unsynchronized state.
Values/Settings:
NA_GateSize3Slots_VC_C
Sets gate size = 3 slots.
NA_GateSize5Slots_VC_C
Sets gate size = 5 slots.
NA_GateSize7Slots_VC_C
Sets gate size = 7 slots.
NA_GateSize9Slots_VC_C
Sets gate size = 9 slots.
Default Value = 0x1
(0x0)
(0x1)
(0x2)
(0x3)
GateSizeBitsync
WO
brst
BbClk
(0x0)
(0x1)
(0x2)
(0x3)
26
Bits
4-5
Mnemonic
GateSizeFramesync
Prop
WO
brst
BbClk
Description
GATE SIZE FOR FRAME SYNCHRONIZATION STATE
Purpose: Sets the size of the detection gate in baseband clock
cycles for the frame synchronization state.
Values/Settings:
NA_GateSize3Slots_VC_C
Sets gate size = 3 slots.
NA_GateSize5Slots_VC_C
Sets gate size = 5 slots.
NA_GateSize7Slots_VC_C
Sets gate size = 7 slots.
NA_GateSize9Slots_VC_C
Sets gate size = 9 slots.
Default Value = 0x1
(0x0)
(0x1)
(0x2)
(0x3)
GateAdjBitsyncEn
GateAdjFramesyncEn
WO
brst
BbClk
WO
brst
BbClk
26
26.85
Used for setting the threshold (number of consecutive detected chirp pulses) to enter bit synchronization
state from the unsynchronized state, as well as for setting the threshold (number of consecutive lost chirp
pulses) to enter the unsynchronized state from bit synchronization state.
Note: The frame synchronization state is reached after the SyncWord has been received.
MSB
Offset
RW
Bit Number
LSB
0x5F
init
LeaveBitsyncThreshold
W
init
Go2BitsyncThreshold
0
Mnemonic
Go2BitsyncThreshold
Prop
WO
brst
BbClk
Description
THRESHOLD FOR ENTERING BIT SYNCHRONIZATION
Purpose: Sets the required number of consecutive chirp pulses
detected in the unsynchronized state to go to bit synchronization state.
Values/Settings:
Default Value = 0x2
This register must be defined before:
RxCmdStart = True
4-6
LeaveBitsyncThreshold
WO
brst
BbClk
26
26.86
Used for adjusting the RTC values before transmission due to hardware delays inside the transmitter.
MSB
Offset
RW
Bit Number
LSB
0x60
init
W
init
RtcTimeBTxAdj
0
Mnemonic
RtcTimeBTxAdj
Prop
WO
brst
BbClk
Description
REAL TIME CLOCK TIMEB TRANSMISSION DELAY ADJUSTMENT
Purpose: Before transmitting, the Real Time Clock control value is adjusted
to compensate for transmitter delays.
NA_MacRtcTimeBTxAdj1M2Ary_IC_C
(0x05)
Adjustment for 1 Msymbols 2Ary.
NA_MacRtcTimeBTxAdj1M2AryFec_IC_C
(0x07)
Adjustment for 1 Msymbols 2Ary FEC.
NA_MacRtcTimeBTxAdj500k2Ary_IC_C
(0x09)
Adjustment for 500 ksymbols 2Ary.
NA_MacRtcTimeBTxAdj500k2AryFec_IC_C
(0x0F)
Adjustment for 500 ksymbols 2Ary FEC.
Default Value = 0x0
Note: This value is added to the RTC value after reading due to the delay in
the transmitter while shifting out this value.
26
26.87
Used for adjusting the RTC values after reception due to hardware delays inside the receiver.
MSB
Offset
RW
Bit Number
LSB
0x61
init
W
init
RtcTimeBRxAdj
0
Mnemonic
Prop
0-7
RtcTimeBRxAdj
WO
brst
BbClk
Description
REAL TIME CLOCK TIMEB RECEPTION DELAY ADJUSTMENT
Purpose: Adjusts the Real Time Clock value after reception to compensate
for receiver delays.
Values/Settings:
NA_MacRtcTimeBRxAdj1M2Ary_IC_C
Adjustment for 1 Msymbols 2Ary.
NA_MacRtcTimeBRxAdj1M2AryFec_IC_C
Adjustment for 1 Msymbols 2Ary FEC.
NA_MacRtcTimeBRxAdj500k2Ary_IC_C
Adjustment for 500 ksymbols 2Ary.
NA_MacRtcTimeBRxAdj500k2AryFec_IC_C
Adjustment for 500 ksymbols 2Ary FEC.
Default Value = 0x0
(0x04)
(0x09)
(0x08)
(0x0C)
Note: This value is added to the RTC value after reading due to delay in the
transmitter while shifting out this value.
26.88
26
Used for setting the value of the Real Time Clock and for enabling Auto mode for TimeB packets.
MSB
Offset
RW
Bit Number
LSB
init
Internal
Use Only
Rtc
CmdRd
Rtc
CmdWr
init
0x62
Rtc
TimeB
Auto
Mode
0
Mnemonic
RtcCmdWr
Prop
WO
brst
strb
BbClk
Description
SET RAMRTCREG VALUE IN REAL TIME CLOCK
Purpose: After writing the desired RTC value to RamRtcReg,
this field transfers the value into the RTC circuit. This requires
62 s after the command has been executed before the RTC is
updated with the value from RamRtcReg.
Values/Settings:
0 = Ignore
1 = Set Value
Default Value = 0x0
Note: The commands must not be used after a transmission
has been initiated and while the transmit cycle has not
ended. Furthermore, this command must not be used after a
reception has been started and while the receive cycle has
not ended.
RtcCmdRd
WO
brst
strb
BbClk
26
Bits
4
Mnemonic
RtcTimeBAutoMode
Prop
WO
brst
BbClk
Description
REAL TIME CLOCK AUTO MODE FOR TIMEB PACKETS
Purpose: Automatically sets the RTC values in TimeB packets
for transmission and automatically stores the RTC values of
received TimeB packets in the RTC. Otherwise, the RTC values in TimeB packets for transmission are taken from RAM in
RamRtcTx and the RTC values in received TimeB packets is
stored in RamRtcRx.
Values/Settings:
NA_RtcTimeBAutoModeOff_BC_C(0x0)
The value of RamRtcTx is transmitted in the RTC field of the
TimeB packet, while the RTC value in a received TimeB
packet is stored in RamRtcRx.
NA_RtcTimeBAutoModeOn_BC_C(0x1)
The RTC value for a transmitted TimeB packet is taken from
the Real Time Clock, while the RTC value from a received
TimeB is automatically stored in the Real Time Clock.
Default Value = 0x0
26.89
26
Used in the alternative AGC to change gain value of the desired amplitude.
MSB
Offset
RW
Bit Number
LSB
0x63
init
AgcAmplitude
W
init
Mnemonic
AgcAmplitude
Prop
WO
Description
AGC AMPLITUDE
Purpose: Select desired Amplitude for alternative AGC.
Values/Settings:
Default Value = 0x0
26
26.90
Used for switching between standard AGC and alternate AGC and for setting the value in AgcRangeOffset.
MSB
Offset
RW
Bit Number
LSB
init
Use
Alter
native
Agc
init
0x64
AgcRangeOffset
Write Fields
Bits
0-3
Mnemonic
AgcRangeOffset
Prop
WO
Description
AGC RANGE OFFSET
Purpose: Sets a value in AgcRangeOffset so that the AGC is
temporarily halted when:
| Mean Value - Middle | > AgcRangeOffset
Values/Settings:
Default Value = 0x0
UseAlternativeAgc
WO
26.91
26
Registers between 0x65 and 0x7C inclusive are reserved. The default value for all fields in these registers is
0x0.
MSB
Offset
RW
Bit Number
LSB
0x65
init
W
init
..
.
0x7C
init
W
init
26
26.92
RW
Bit Number
6
0x7D
init
Internal
Use Only
Internal
Use Only
Internal
Use Only
Internal
Use Only
init
LSB
Internal
Use Only
Internal
Use Only
Internal
Use Only
26.93
26
RW
0x7E
init
Bit Number
6
LSB
2
W
init
26
26.94
RW
0x7F
init
Bit Number
6
Internal
Use Only
Internal
Use Only
LSB
2
W
init
27
Auto/Duplex Mode
MSB
From
To
0x80
0x85
RW
Bit Number
6
LSB
2
R
RamStaAddr0
W
R
0x86
0x87
W
R
0x88
0x8D
RamStaAddr1
W
R
0x8E
0x8F
W
R
0x90
0x95
RamTxDstAddr
W
R
0x96
0x97
W
R
0x98
0x98
RamTxLength
W
R
0x99
0x99
W
RamTx
LCh
RamTx
SeqN
RamTx
FragC
RamTxLength
R
0x9A
0xA7
W
R
0xA8
0xAD
RamRxDstAddr
W
R
0xAE
0xAF
W
R
0xB0
0xB5
RamRxSrcAddr
W
R
0xB6
0xB7
W
R
0xB8
0xB8
RamRxLength
W
27
Offset
MSB
From
To
0xB9
0xB9
Bit Number
RW
RamRxLCh
RamRxSeqN
RamRxFragC
LSB
RamRxLength
R
0xBA
0xDF
W
R
0xE0
0xE5
RamRtcTx
W
R
0xE6
0xE7
W
R
0xE8
0xED
RamRtcRx
W
R
0xEE
0xEF
W
R
0xF0
0xFF
RamRtcReg
W
MSB
To
RW
Bit Number
6
LSB
2
R
Register Space
W
R
0x180
0x18F
RamTxRxCryptKey
W
R
0x190
0x1BF
W
R
0x1C0
0x1CF
RamTxCryptClock
W
R
0x1D0
0x1DF
W
R
0x1E0
0x1EF
RamRxCryptClock
W
R
0x1F0
0x1FF
W
27
MSB
To
RW
Bit Number
LSB
R
Register Space
W
R
0x280
0x2FF
RamRxBuffer
W
RW
Bit Number
6
LSB
2
R
Register Space
W
R
0x380
0x3FF
RamTxBuffer
W
27
27.2
Auto/Simplex Mode
MSB
From
To
0x280
0x2FF
RW
Bit Number
6
LSB
2
R
RamTxRxBuffer
W
R
0x380
0x3FF
RamTxRxBuffer
W
27.3
27
Transparent/Duplex Mode
MSB
From
To
0x080
0x0FF
RW
Bit Number
6
LSB
2
R
RamRxTransBuffer
W
R
0x180
0x1FF
RamRxTransBuffer
W
MSB
From
To
0x280
0x2FF
RW
Bit Number
6
LSB
2
R
RamTxTransBuffer
W
R
0x380
0x3FF
RamTxTransBuffer
W
27
27.4
Transparent/Simplex Mode
MSB
From
To
0x080
0x0FF
RW
Bit Number
6
LSB
R
RamTxRxTransBuffer
W
R
0x180
0x1FF
RamTxRxTransBuffer
W
R
0x280
0x2FF
RamTxRxTransBuffer
W
R
0x380
0x3FF
RamTxRxTransBuffer
W
28
Used to buffer the 48 bit address of the source station based on the IEEE standard addressing convention.
The first 24 bits correspond to the Organizationally Unique Identifier assigned by IEEE, while the second 24
bits are administered locally. This address is set in the MACFrame of a Data, Brdcast, TimeB, and Reg2S
packet.
Offset
MSB
From
To
0x80
0x85
RW
Bit Number
6
LSB
2
R
RamStaAddr0
W
Read/Write
Bits
0-47
Mnemonic
RamStaAddr0
Prop
RW
brst
BbClk
RAM
Description
STATION ADDRESS BASED ON IEEE ADDRESSING CONVENTION
Purpose: Stores a 48 bit universally administered IEEE
address of the source station.
Register Values/Settings:
If this convention is used, then set the first two bits of this field
as follows:
RamStaAddr0[0] = 0
RamStaAddr0[1] = 0
Default Value = 0x0
Note: It is not mandatory to use this convention for addressing.
28
28.2
MSB
From
To
0x86
0x87
RW
Bit Number
6
LSB
2
R
Reserved
W
28.3
28
Used to buffer the 48 bit address of the source station based on a configuration locally administered by the
assignee. This address is set in the MACFrame of a Data, Brdcast, TimeB, or Reg2S packet.
Offset
MSB
From
To
RW
0x88
0x8D
Bit Number
6
LSB
2
R
RamStaAddr1
W
Read/Write
Bits
0-47
Mnemonic
RamStaAddr1
Prop
RW
brst
BbClk
RAM
Description
STATION ADDRESS BASED ON LOCALLY ADMINISTERED CONFIGURATION
28
28.4
MSB
From
To
0x86
0x87
RW
Bit Number
6
LSB
2
R
Reserved
W
28.5
28
Used to buffer a 48 bit address of the destination station to be set in the MACFrame of a Data or Brdcast
packet that is to be transmitted. This destination address is used in all packet types, except the TimeB
packet. In TimeB packets, this RAM location contains a Real Time Clock value.
Offset
MSB
From
To
0x90
0x95
RW
Bit Number
6
LSB
2
R
RamTxDstAddr
W
Read/Write
Bits
0-47
Mnemonic
RamTxDstAddr
Prop
RW
brst
BbClk
RAM
Description
TRANSMIT DESTINATION ADDRESS
Purpose: Stores the 48 bit address of the destination station for
a Data packet that is to be transmitted, as well as the 48 bit
broadcast/ multicast address of a Brdcast packet to be transmitted.
Register Values/Settings:
Default Value = 0x0
This register must be defined before:
TxCmdStart = True.
Usage: Auto mode only.
28
28.6
MSB
From
To
0x96
0x97
RW
Bit Number
6
LSB
2
R
Reserved
W
28.7
28
Auto/Duplex [Pg 0] 0x98 to 0x99 TX Data Length and Bits for SW Usage
Used to set the length of the data field in packets to be transmitted, as well as to set three bits that are available for use by software.
Offset
MSB
From
To
0x98
0x98
RW
Bit Number
6
LSB
2
R
RamTxLength
W
R
0x99
0x99
W
RamTxFragC
TX Transparent Bits
for SW usage
RamTxLength
Read/Write
Bits
0-12
Mnemonic
RamTxLength
Prop
RW
brst
BbClk
RAM
Description
DATA FIELD LENGTH OF A PACKET TO BE TRANSMITTED
Purpose: Sets the number of bytes of the Data field of Data,
Brdcast, and TimeB packets. This field will also be transmitted
in a Req2s packet when using 3-way handshaking.
Register Values/Settings:
Default Value = 0x0
This register must be defined before:
TxCmdStart = True.
Usage: Auto mode only.
13-15
RamTxFragC
RW
brst
BbClk
RAM
These bits are transparent for the nanoLOC. There are only
loaded from RAM together with the TxLength field and sent in
the MACFrame. On the receiver side they can be read from the
corresponding RX field called RX Transparent Bits for SW
usage.
In several applications these bits were used on software level
to implement functionalities such as Link Control Channel, a
sequential numbering scheme, or a packet fragmentation
scheme.
See also: Auto/Duplex [Pg 0] 0xB8 to 0xB9 RX Data Length
and Bits for SW Usage (see page 263).
Usage: Auto mode only.
28
28.8
MSB
From
To
0x9A
0xA7
RW
Bit Number
6
LSB
2
R
Reserved
W
28.9
28
Used to buffer the 48 bit address of the destination address field provided in the MACFrame of a received
Data or Brdcast packet.
Offset
MSB
From
To
RW
0xA8
0xAD
Bit Number
6
LSB
2
R
RamRxDstAddr
W
Read/Write
Bits
0-47
Mnemonic
RamRxDstAddr
Prop
RW
brst
BbClk
RAM
Description
RECEIVE DESTINATION ADDRESS
Purpose: Stores the destination address from received Data
and Brdcast packets. It allows for the retrieval of the destination address when in promiscuous mode in order to compare
broadcast/multicast addresses (Brdcast packets).
Register Values/Settings:
Default Value = 0x0
Note: Valid when:
RxHeaderEnd event is triggered
RxCrc1 == RxCrc1Succ
RxPacketType == RxPacketTypeData |
RxPacketTypeBrdcast
Usage: Auto mode only.
28
28.10
MSB
From
To
0xAE
0xAF
RW
Bit Number
6
LSB
2
R
Reserved
W
28.11
28
Used to buffer the 48 bit address of the source address field provided in the MACFrame of a received Data
or Brdcast packet.
Offset
MSB
From
To
RW
0xB0
0xB5
Bit Number
6
LSB
2
R
RamRxSrcAddr
W
Read/Write
Bits
0-7
Mnemonic
RamRxSrcAddr
Prop
RW
brst
BbClk
RAM
Description
RECEIVE SOURCE ADDRESS
Purpose: Stores the source address of the received Data or
Brdcast packet.
Register Values/Settings:
Default Value = 0x0
Note: Valid when:
RxHeaderEnd event is triggered
RxCrc1 == RxCrc1Succ
Usage: Auto mode only.
28
28.12
MSB
From
To
0xB6
0xB7
RW
Bit Number
6
LSB
2
R
Reserved
W
28.13
28
Auto/Duplex [Pg 0] 0xB8 to 0xB9 RX Data Length and Bits for SW Usage
Used to store a value which indicates the length of the data field in received packets, as well as to store
three bits that are available for use by software.
Offset
MSB
From
To
0xB8
0xB8
RW
Bit Number
6
LSB
2
R
RamRxLength
W
R
0xB9
0xB9
W
RamRxFragC
RX Transparent Bits for SW
usage
RamRxLength
Read/Write
Bits
0-12
Mnemonic
RamRxLength
Prop
RW
brst
BbClk
RAM
Description
DATA FIELD LENGTH OF RECEIVED PACKET
Purpose: Stores the length (number of bytes) of the data field
of Data, Brdcast, TimeB, Req2S, and Clr2S packets.
Note: Valid when:
RxHeaderEnd event is triggered
RxCrc1 == RxCrc1Succ
Usage: Auto mode only
13-15
RamRxFragC
RW
brst
BbClk
RAM
These bits are transparent for the nanoLOC. They are only
stored to RAM together with the RxLength field received in the
MACFrame.
In several applications these bits were used on software level
to implement functionalities such as Link Control Channel, a
sequential numbering scheme, or a packet fragmentation
scheme.
Usage: Auto mode only.
28
28.14
MSB
From
To
0xBA
0xDF
RW
Bit Number
6
LSB
2
R
Reserved
W
28.15
28
Used to temporarily buffer the 48 bit value of the Real Time Clock to prepare time beacon (TimeB) packets
for transmission.
Offset
MSB
From
To
RW
0xE0
0xE5
Bit Number
6
LSB
R
RamRtcTx
W
Read/Write
Bits
0-47
Mnemonic
RamRtcTx
Prop
RW
brst
BbClk
Description
TX REAL TIME CLOCK VALUE BUFFER
Purpose: Stores the value of the Real Time Clock for use by
TimeB packets to be transmitted.
28
28.16
MSB
From
To
0xE6
0xE7
RW
Bit Number
6
LSB
2
R
Reserved
W
28.17
28
Used to temporarily buffer the value of the Real Time Clock from a received time beacon packet (TimeB).
Offset
MSB
From
To
RW
0xE8
0xED
Bit Number
6
LSB
2
R
RamRtcRx
W
Read/Write
Bits
0-47
Mnemonic
RamRtcRx
Prop
RW
brst
BbClk
Description
RX REAL TIME CLOCK VALUE BUFFER
Purpose: Stores the value of the Real Time Clock that is provided in the MACFrame of a received TimeB packet.
28
28.18
MSB
From
To
0xEE
0xEF
RW
Bit Number
6
LSB
2
R
Reserved
W
28.19
28
Used to buffer the 48 bit value of the internal Real Time Clock for use by software to read or write the RTC
value.
Offset
MSB
From
To
RW
0xF0
0xFF
Bit Number
6
LSB
2
R
RamRtcReg
W
Read/Write
Bits
0-47
Mnemonic
RtcReg
Prop
RW
brst
BbClk
Description
RAM REAL TIME CLOCK REGISTER
Purpose: Buffer register for reading or writing the 48 bit internal
Real Time Clock value. Since the Real Time Clock is updated
every 30.517578125 s, it is not directly accessible by the
user.
Note: RtcCmdRd reads the value of the Real Time Clock to this
buffer. RtcCmdWr writes a value in this buffer to the Real
Time Clock.
28
28.20
The nanoLOC chip register (0x00 to 0x7F) is mirrored to RAM locations 0x100 to 0x17F.
Offset
MSB
From
To
0x100
0x17F
RW
Bit Number
6
LSB
2
R
Mirrored Register (0x00 to 0x7F)
W
28.21
28
Used to store the four 128 bit encryption keys used for cipher generation.
Offset
MSB
From
To
RW
0x180
0x18F
Bit Number
6
LSB
R
RamTxRxCryptKey[0]
W
R
0x190
0x19F
RamTxRxCryptKey[1]
W
R
0x1A0
0x1AF
RamTxRxCryptKey[2]
W
R
0x1B0
0x1BF
RamTxRxCryptKey[3]
W
Read/Write
Bits
Per key:0-127
Total:0-511
Mnemonic
Prop
RamTxRxCryptKey
RW
brst
BbClk
Description
ENCRYPTION KEYS
Purpose: Stores the four 128 bit encryption keys used as
inputs of the cipher stream generator.
Register Values/Settings:
RamTxRxCryptKey[CryptId], CryptId = 0...3
This register must be defined before:
TxCmdStart = True or RxCmdStart = True.
Usage: Auto mode only.
28
28.22
Used to store the four 32 bit clock values used for cipher generation (encryption).
Offset
MSB
From
To
0x1C0
0x1C3
RW
Bit Number
6
LSB
R
RamTxCryptClock[0]
W
R
0x1C4
0x1C7
RamTxCryptClock[1]
W
R
0x1C8
0x1CB
RamTxCryptClock[2]
W
R
0x1CC
0x1CF
RamTxCryptClock[3]
W
Read/Write
Bits
Per value:0-31
Total: 0-127
Mnemonic
RamTxCryptClock
Prop
RW
brst
BbClk
RAM
Description
ENCRYPTION CLOCK VALUE
Purpose: Stores the four publicly known 32 bit clock values used as inputs of the cipher stream generator for
encryption.
Register Values/Settings:
RamTxCryptClock[CryptId], CryptId = 03.
This register must be defined before:
TxCmdStart = True.
Usage: Auto mode only.
28.23
28
MSB
From
To
0x1D0
0x1DF
RW
Bit Number
6
LSB
2
R
Reserved
W
28
28.24
Used to store the four 32 bit clock values used as input for cipher generation (decryption).
Offset
MSB
From
To
0x1E0
0x1E3
RW
Bit Number
6
LSB
R
RamRxCryptClock[1]
W
R
0x1E4
0x1E7
RamRxCryptClock[1]
W
R
0x1E8
0x1EB
RamRxCryptClock[2]
W
R
0x1EC
0x1EF
RamRxCryptClock[3]
W
Read/Write
Bits
Per value:0-31
Total:0-127
Mnemonic
RamRxCryptClock
Prop
RW
brst
BbClk
RAM
Description
RECEIVE DECRYPTION CLOCK
Purpose: Stores the four publicly known 32 bit clock values used as inputs of the cipher stream generator for
decryption.
Register Values/Settings:
RxCryptClock[CryptId], CryptId = 03.
This register must be defined before:
RxCmdStart = True.
28.25
28
MSB
From
To
0x1F0
0x1FF
RW
Bit Number
6
LSB
2
R
Reserved
W
28
28.26
The nanoLOC chip register (0x00 to 0x7F) is mirrored to RAM locations 0x200 to 0x27F.
Offset
MSB
From
To
0x200
0x27F
RW
Bit Number
6
LSB
2
R
Mirrored Register (0x00 to 0x7F)
W
28.27
28
Used to store 128 bytes (1024 bits) of data in two buffers of 64 bytes each from a received Data packet.
Offset
MSB
From
To
0x280
0x2FF
RW
Bit Number
6
LSB
2
R
RamRxBuffer
W
Read/Write
Bits
0-1023
Mnemonic
RamRxBuffer
Prop
RW
brst
BbClk
RAM
Description
128 BYTE RX DATA BUFFER
Purpose: Stores in two buffers of 64 bytes each the received
data from Data packets.
Note: Data in buffer are valid when the
RxBufferRdy event is triggered.
28
28.28
The nanoLOC chip register (0x00 to 0x7F) is mirrored to RAM locations 0x300 to 0x37F.
Offset
MSB
From
To
0x200
0x27F
RW
Bit Number
6
LSB
2
R
Mirrored Register (0x00 to 0x7F)
W
28.29
28
Used to store 128 bytes (1024 bits) of data in two buffers of 64 bytes each for a Data packet to be transmitted.
Offset
MSB
From
To
0x380
0x3FF
RW
Bit Number
6
LSB
2
R
RamTxBuffer
W
Read/Write
Bits
0-1023
Mnemonic
RamTxBuffer
Prop
RW
brst
BbClk
RAM
Description
128 BYTE TX DATA BUFFER
Purpose: Stores in two buffers of 64 bytes each the data to be
set in of a Data packet that is to be transmitted.
28
28.30
MSB
To
RW
Bit Number
6
LSB
2
R
Register Space
0x80
0x85
RamStaAddr0
W
R
0x86
Reserved
0x87
W
R
0x88
0x8D
RamStaAddr1
W
R
0x8E
Reserved
0x8F
W
R
0x90
0x95
RamTxDstAddr
W
R
0x96
Reserved
0x97
W
R
0x98
0x98
RamTxLength
W
R
0x99
0x99
W
TX Transparent Bits
for SW usage
RamTxLength
R
0x9A
Reserved
0xA7
W
R
0xA8
0xAD
RamRxDstAddr
W
R
0xAE
Reserved
0xAF
W
R
0xB0
0xB5
RamRxSrcAddr
W
R
0xB6
Reserved
0xB7
W
R
0xB8
0xB8
RamRxLength
W
R
0xB9
0xB9
W
RX Transparent Bits
for SW usage
RamRxLength
Offset
MSB
From
To
0xBA
0xDF
RW
Bit Number
6
28
LSB
R
Reserved
W
R
0xE0
0xE5
RamRtcTx
W
R
0xE6
Reserved
0xE7
W
R
0xE8
0xED
RamRtcRx
W
R
0xEE
Reserved
0xEF
W
R
0xF0
0xFF
RamRtcReg
W
28
28.31
MSB
To
RW
Bit Number
6
LSB
2
R
Register Space
0x180
0x18F
RamTxRxCryptKey
W
R
0x190
Reserved
0x1BF
W
R
0x1C0
0x1CF
RamTxCryptClock
W
R
0x1D0
Reserved
0x1DF
W
R
0x1E0
0x1EF
RamRxCryptClock
W
R
0x1F0
Reserved
0x1FF
W
28.32
28
Used for storing sequentially transmit and receive data, where the entire 256 bytes are divided into two 128
byte (2048 bit) buffers as a combined receive/transmit buffer. As this is Simplex mode, the transmit and
receive buffer operations are dependent on each other, in that the receive operation must be completed
before the transmit operation can be initiated. Consequently, the buffer for the RX data and for the TX data
is double the size, in this case, 256 bytes.
Offset
From
MSB
To
RW
Bit Number
6
LSB
2
R
Register Space
0x280
0x2FF
RamTxRxBuffer
W
R
Register Space
0x380
0x3FF
RamTxRxBuffer
W
Read/Write
Bits
0-2047
Mnemonic
RamTxRxBuffer
Prop
RW
brst
BbClk
RAM
Description
256 BYTE SHARED TRANSMIT/RECEIVE DATA BUFFER
Purpose: Stores both received data and data for transmission
(sequentially) in a combined RX/TX buffer.
28
28.33
The RX data buffer, which is used for storing the MACFrame from a received packet, is a 256 byte buffer
divided into two 128 byte buffers.
As this is Transparent mode, software is responsible fro maintaining MACFrame variables. As this is Duplex
mode, received data can saved to this buffer while data to be transmitted can be simultaneously written to
the TX data buffer RamTxTransBuffer.
Offset
From
MSB
To
RW
Bit Number
6
LSB
2
R
Register Space
0x080
0x0FF
RamRxTransBuffer
W
R
Register Space
0x180
0x1FF
RamRxTransBuffer
W
Read/Write
Bits
0-2047
Mnemonic
RamRxTransBuffer
Prop
RW
brst
BbClk
RAM
Description
256 BYTE RECEIVE BUFFER
Purpose: Stores the received data in two 128 byte buffers.
28.34
28
The TX Data Buffer, which is used for storing completed MACFrames from software for transmission, is a
256 byte buffer divided into two 128 byte buffers.
As this is Transparent mode, software is responsible fro maintaining MACFrame variables. As this is Duplex
mode, data for transmission can written to this buffer while received data can be simultaneously saved to
the RX Data Buffer RamRxTransBuffer.
Offset
From
MSB
To
RW
Bit Number
6
LSB
2
R
Register Space
0x280
0x2FF
RamTxTransBuffer
W
R
Register Space
0x380
0x3FF
RamTxTransBuffer
W
Read/Write
Bits
0-2047
Mnemonic
RamTxTransBuffer
Prop
RW
brst
BbClk
RAM
Description
256 BYTE TRANSMIT BUFFER
Purpose: Stores the data to be transmitted in two 128 byte
buffers.
28
28.35
The RX/TX data buffer is a single 512 byte buffer divided into four 128 byte buffers. It is used for storing
sequentially MACFrames from a received packet to be read from software, or MACFrames provided by software to be transmitted in packets over the air.
As this is Transparent mode, software is responsible fro maintaining MACFrame variables. As this is Simplex mode, the transmit and receive buffer operations are dependent of each other so that a receive operation must be completed first before a transmit operation can be initiated. Consequently, the buffer size
available for the RX or TX data is the complete baseband RAM memory space of 512 bytes.
Offset
From
MSB
To
RW
Bit Number
6
LSB
R
Register Space
0x080
0x0FF
RamTxRxTransBuffer
W
R
Register Space
0x180
0x1FF
RamTxRxTransBuffer
W
R
Register Space
0x280
0x2FF
RamTxRxTransBuffer
W
R
Register Space
0x380
0x3FF
RamTxRxTransBuffer
W
Read/Write
Bits
0-4095
Mnemonic
RamTxRxTransBuffer
Prop
RW
brst
BbClk
RAM
Description
512 BYTE SHARED TRANSMIT/RECEIVE BUFFER
Purpose: Sequentially stores the received data or the data to
be transmitted in a combined 512 byte RX/TX buffer.
Appendices
A1
Symbol
Value
Description
MacAckTimeMax
MacSifsTime + 2 MacAirDelTimeMax = 24 s
MacAirDelTimeMax
MacArqCntMax
0 to 14
MacBrdcastLengthMax
8192 bytes
MacCifsTime
MacSifsTime + 2 MacAirDelTimeMax = 24 s
MacClr2STimeMax
MacSifsTime + 2 MacAirDelTimeMax = 24 s
MacDataLengthMax
8192 bytes
MacPreambleSymbols
30
MacSifsTime
8 s
MacSifsTime + 2 MacAirDelTimeMax = 24 s
MacSlotUncertainty
MacAirDelTimeMax = 8 s
MacTailSymbols
a.
b.
c.
d.
e.
See figure 22. Carrier sense interframe space time (CIFS) on page 290 and figure 23. Air interface delay on page 290.
See figure 22. Carrier sense interframe space time (CIFS) on page 290.
See figure 21. Switching interframe space time (SIFS) on page 290 and figure 22. Carrier sense interframe space time (CIFS)
on page 290.
See figure 23. Air interface delay on page 290.
See figure 23. Air interface delay on page 290.
The following three figures illustrate the attributes and constants defined in this appendix:
A1
Tx
air interface
Rx
air interface
TxMode
Rx symbols
Tx symbols
RxDelay1
TxDelay3
MacSifsTime
1. Propagation delay from air interface to digital symbol decoding and to carrier sensing mechanism.
2. Switching time from symbol decoding to transmit initiation.
3. Propagation delay from transmit initiation to air interface (includes transmitter ramp up).
Tx STA1
Rx STA2
Tx STA2
Rx STA1
MacSifsTime
MacAirDelTimeMax
MacAirDelTimeMax
MacCifsTime
TxDelay
Tx STA1
MacAirDelTimeMax
Rx STAx
RxDelay
Rx symbols
/RSSI
MacSlotTime
-MacSlotUncertainty
+MacSlotUncertainty
A2
Register
Bit
RW
Field
0x00
RW
SpiBitOrder
0x0
RW
SpiTxDriver
0x0
Open-Drain
RW
IrqPolarity
0x0
RW
IrqDriver
0x0
Open-Drain
0-7
RO
Version
0x5
V. 5
WO
WakeUpTimeByte
0x0
0-7
RO
Revision
0x1
1-3
WO
WakeUpTimeWe
0x0
1-4
RW
BattMgmtThreshold
0x0
No comparator is set
RW
BattMgmtEnable
0x0
RO
BattMgmtCompare
0x0
0-3
RO
DiolnValueAlarmStatus
0x0
no alarm
WO
DioDirection
0x0
WO
DioOutValueAlarmEnable
0x0
Normal input
WO
DioAlarmStart
0x0
no alarm
WO
DioAlarmPolarity
0x0
WO
DioUsePullup
0x0
No pull-up resistor
WO
DioUsePulldown
0x0
No pull-down resistor
0x05
0-3
WO
DioPortWe
0x06
RW
EnableWakeUpRtc
0x0
RW
EnableWakeUpDio
0x0
4-6
RW
PowerUpTime
0x0
PowerUpTime128Ticks_C
RW
PowerDownMode
0x0
RW
ResetBbClockGate
0x1
RW
ResetBbRadioCtrl
0x1
WO
PowerDown
0x0
WO
UsePullup4Test
0x0
WO
UsePulldown4Test
0x0
RW
EnableBbCrystal
0x0
RW
EnableBbClock
0x0
RW
BypassBbCrystal
0x0
4-6
RW
FeatureClockFreq
0x0
NA_FeatureClockDiv128_C
RW
EnableFeatureClock
0x0
WO
UsePullup4Spiclk
0x0
WO
UsePulldown4Spiclk
0x0
0x01
0x02
0x03
0x04
0x07
0x08
0x09
Default
Description
A2
Register
Bit
RW
Field
WO
UsePullup4Spissn
0x0
WO
UsePulldown4Spissn
0x0
WO
UsePullup4Spirxd
0x0
WO
UsePulldown4Spirxd
0x0
WO
UsePullup4Spitxd
0x0
WO
UsePulldown4Spitxd
0x0
WO
UsePullup4Por
0x0
WO
UsePulldown4Por
0x0
WO
UsePullup4Pamp
0x0
WO
UsePulldown4Pamp
0x0
WO
UsePullup4Ucirq
0x0
WO
UsePulldown4Ucirq
0x0
WO
UsePullup4Ucrst
0x0
WO
UsePulldown4Ucrst
0x0
WO
WritePulls4Spi
0x0
WO
WritePulls4Pads
0x0
0x0C
0-3
RW
TestModes
0x0
0x0D
WO
RfTestSelect
0x0
NA_RfTestSelTxDacCmd_C - INTERNAL
0x0E
0-1
RW
RamIndex
0x0
4-5
RW
DeviceSelect
0x0
RW
TxIrqEnable
0x0
RW
RxIrqEnable
0x0
RW
BbTimerIrqEnable
0x0
RW
LoIrqEnable
0x0
RO
TxIrqStatus
0x0
RO
RxIrqStatus
0x0
RO
BbTimerIrqStatus
0x0
RO
LoIrqStatus
0x0
0-5
RO
TxIntsRawStat
0-5
WO
TxIntsReset
0x0A
0xB
0x0F
0x10
0-1
2
Default
Description
TxBufferRdy
0x0
TxEnd
0x0
Transmit End
A2
Register
0x11
Bit
RW
0x0
TxTimeSlotTOut
0x0
TxTimeSlotEnd
0x0
0x0
0-6
RO
RxIntsRawStat
0-6
WO
RxIntsReset
0x0
RxEnd
0x0
RxHeaderEnd
0x0
RxOverflow
0x0
RxTimeSlotTOut
0x0
RxTimeSlotEnd
0x0
0x0
RO
LoIntsRawStat
WO
LoIntsReset
WO
ClearBasebandTimerInt
0x0
LoTuningReady
0x0
TxIntsEn
0x0
TxBufferRdy
0x0
TxEnd
0x0
Transmit End
TxUnderrun
0x0
TxTimeSlotTOut
0x0
TxTimeSlotEnd
0x0
RxIntsEn
0x0
RxBufferRdy
0x0
RxEnd
0x0
RxHeaderEnd
0x0
RxOverflow
0x0
RxTimeSlotTOut
0x0
RxTimeSlotEnd
0x0
0-5
WO
0-6
WO
1-0
0x15
RxBufferRdy
0-1
0x14
Description
TxUnderrun
1
0x13
Default
0-1
0x12
Field
WO
LoIntsEn
LoTuningReady
0x0
0x16-0x18
0-21
RW
LoRxCapsValue
0x200040
0x19-0x1B
0-21
RW
LoTxCapsValue
0x200040
0x1C
WO
LoEnableFastTuning
0x0
1-3
WO
LoFastTuningLevel
0x0
WO
LoEnableLsbNeg
0x0
WO
UseLoRxCaps
0x0
0x1D0x1E
0-16
RW
LoTargetValue
0x1F
0-7
WO
AgcThresHold1
A2
Register
Bit
RW
Field
0x20
0-7
WO
AgcThresHold2
0x6
0x21
0-6
WO
HoldAgcInBitSync
0x18
WO
HoldAgcInFrameSync
0x1
AgcDeadTime
0xC
0x0
Gain Length N = 5
0x22
0-5
Default
Description
6-7
WO
AgcNregLength
0x23-0x24
0-12
WO
AgcIntTime
0x200
0x25
0-5
WO
AgcValue
0x3F
WO
AgcDefaultEn
0x0
WO
AgcHold
0x0
RF AGC is active
0-5
RO
AgcGain
0x0
0-5
WO
AgcRssiThres
WO
AgcEnable
0x0
0-5
RO
FctPeriod
0x0
0-3
WO
ChirpFilterCaps
0x06
WO
FctClockEn
0x0
WO
StartFctMeasure
0x0
WO
EnableTx
0x0
0x28-0x29
0-15
WO
BasebandTimerStartValue
0x0
0x2A0x2B
0-12
RO
ToaOffsetMeanAck
0x0
15
RO
ToaOffsetMeanAckValid
0x0
0x2C0X2D
0-15
RO
TxRespTime
0x0
0x2E
0-2
RO
PhaseOffsetAck
0x0
4-6
RO
PhaseOffsetData
0x0
0-12
RO
ToaOffsetMeanData
0x0
ToaOffsetMeanDataValid
0x0
0x26
0x27
0x2F-0x30
15
0x2A-0x31
0-63
WO
SyncWord
0x31
0-3
RO
RxPacketType
4-5
RO
RxAddrMatch
0x1E
0x0xAB69
CA9492D
52CAB
0x0
A2
Register
Bit
RW
Field
RO
RxCrc1Stat
0x0
RO
RxCrc2Stat
0x0
0-3
RO
RxCorrBitErr
0x0
4-7
WO
RxCorrErrThres
0x3
0x33-0x34
0-15
WO
TxTimeSlotStart
0x0
0x35-0x36
0-15
WO
TxTimeSlotEnd
0x33
RO
RxAddrSegEsMatch
0x0
RO
RxAddrSegIsMatch
0x0
RO
RxCryptEn
0x0
5-6
RO
RxCryptId
0x0
RO
RxCryptSeqN
0x0
0-14
RO
RxFec1BitErr
0x0
RO
Reserved
WO
TxTimeSlotControl
0x0
WO
RxTimeSlotControl
0x0
0-15
RO
RxPacketSlot
0x0
0-15
WO
RxTimeSlotStart
0x0
0x3A0x3B
0-15
WO
RxTimeSlotEnd
0x0
0x3C
0-3
RO
TxArqCnt
0x0
4-7
WO
TxArqMax
0xE
0-1
WO
CsqDitherValue
0x0
WO
CsqUsePhaseShift
0x0
WO
CsqUse4Phases
0x0
WO
ScqAsyMode
0x0
WO
CsqMemAddrInit
0x0
WO
CsqUseRam
0x0
WO
CsqTest
0x0
0-5
WO
CsqSetValue
0x0
WO
CsqSetIValue
0x0
0x32
0x34-0x35
0x36
0x37
0x38-0x39
0x3D
0x3E
Default
Description
A2
Register
Bit
RW
Field
WO
CsqSetQValue
0x0
WO
D3IFixnMap
0x1
WO
D3lPomEn
0x0
2-3
WO
D3lPomLen
0x0
The last 2 values should be used for calculating the mean value
WO
D3IUpDownEx
0x0
0-6
WO
LeaveMapThresh1InBitsync
0x3
WO
UseMapThresh1InFramesyn
c
0x0
WO
Go2MapThresh1InBitsync
0x7
WO
D3lFixThres1MapEn
0x0
WO
EnableLO
0x0
WO
EnableLOdiv10
0x0
WO
EnableCsqClock
0x0
WO
InvertRxClock
0x0
WO
EnableExtPA
WO
EnableIntPA
0x0
WO
EnableRxClock
0x0
WO
EnableRX
0x0
0-2
WO
LnaFreqAdjust
0x3
4-6
WO
TxPaBias
0x0
0x44
0-5
WO
TxOutputPower0
0x3F
0x45
0-5
WO
TxOutputPower1
0x3F
0x46
0-4
WO
RfRxCompValueI
0xF
0x47
WO
RfRxCompValueQ
0xF
0x48
0-2
WO
SymbolDur
0x3
4-6
WO
SymbolRate
0x7
WO
ModulationSystem
0x0
0-1
WO
Crc2Type
0x0
Selects NA_Crc2type1_VC_C
WO
UseFec
0x0
Disables FEC
WO
TxRxCryptCrc2Mode
0x0
Enables
NA_TxRxCryptCrc2ModeUncrypted_BC_C
4-7
WO
TxRxCryptClkMode
RW
SwapBbBuffers
0x0
WO
TxRxBbBufferMode1
0x0
0x3F
0x40
0x41
0x42
0x43
0x49
0x4A
Default
Description
A2
Register
Bit
RW
Field
WO
TxRxBbBufferMode0
0x0
WO
FdmaEnable
0x1
WO
TxRxMode
0x0
0-2
WO
ChirpMatrix0
0x0
Downchirp
4-6
WO
ChirpMatrix1
0x1
Upchirp
8-10
WO
ChirpMatrix2
0x3
1214
WO
ChirpMatrix3
0x4
Off Chirp
0-1
WO
TxPreTrailMatrix0
0x0
Downchirp
2-3
WO
TxPreTrailMatrix1
0x1
UpChirp
WO
TxUnderrunIgnore
0x1
WO
TxMacCifsDis
0x0
WO
TxVCarrSens
0x0
1-2
WO
TxPhCarrSenseMode
0x0
WO
TxVCarrSensAck
0x0
WO
TxArq
0x1
WO
Tx3Way
0x0
WO
TxBackOffAlg
WO
TxFragPrio
0x0
0x4F
0-7
WO
TxBackOffSeed
0x0
0x50
0-3
WO
TxCryptSeqReset
0x0
WO
TxCryptEn
0x0
Disable Encryption
5-6
WO
TxCryptId
0x0
WO
TxCryptSeqN
0x0
0-6
WO
TxScrambInit
0x7F
WO
TxScrambEn
0x1
0x52-0x53
0-12
WO
TxTransBytes
0x0
0x54
0-3
WO
TxPacketType
0x0
WO
TxAddrSlct
0x0
WO
TxCmdStop
0x0
WO
TxCmdStart
0x0
2-3
WO
TxBufferCmd
0x0
WO
RxCmdStop
0x0
WO
RxCmdStart
0x0
WO
RxBufferCmd
0x0
0x4B0x4C
0x4D
0x4E
0x51
0x55
0x56
Default
Description
Back-Off Algorithm
A2
Register
Bit
RW
Field
Default
Description
0x57
0-3
WO
RxCryptSeqReset
0x0
0x58-0x59
0-12
WO
RxTransBytes
0x0
0x5A
WO
RxTimeBCrc1Mode
0x1
WO
RxCrc2Mode
0x1
2-3
WO
RxArqMode
0x2
WO
RxAddrSegEsMode
0x0
WO
RxAddrSegIsMode
0x0
6-7
WO
RxAddrSegDevIdL
0x0
WO
RxDataEn
0x1
WO
RxBrdcastEn
0x1
WO
RxTimeBEn
0xq
WO
RxAddrMode
0x1
4-7
WO
RangingPulses
0x5
0x5C
0-4
WO
PulseDetDelay
0x5
0x5D
0-2
WO
GateAdjThreshold
0x7
WO
DownPulseDetectDis
0x0
WO
UpPulseDetectDis
0x0
0-1
WO
GateSizeUnsync
0x1
2-3
WO
GateSizeBitsync
0x1
4-5
WO
GateSizeFramesync
0x1
WO
GateAdjBitsyncEn
0x1
WO
GateAdjFramesyncEn
0x1
0-2
WO
Go2BitsyncThreshold
0x2
4-6
WO
LeaveBitsyncThreshold
0x6
0-7
WO
RtcTimeBTxAdj
0x0
0x5B
0x5E
0x5F
0x60
A2
Register
Bit
RW
Field
0x61
0-7
WO
RtcTimeBRxAdj
0x0
0x62
WO
RtcCmdWr
0x0
WO
RtcCmdRd
0x0
WO
RtcTimeBAutoMode
0x0
WO
RtcTimeBTestMode
0x0
0x63
0-4
WO
AgcAmplitude
0x0
0x64
0-3
WO
AgcRangeOffset
0x0
WO
UseAlternativeAgc
0x0
Reserved
0x0
0x65-0x7C
0x7D
0x7E
0x7F
Default
Description
RW
TxRxDigTestMode
0x0
RO
DebugMacRxCmd
0x0
RO
DebugMacTxCmd
0x0
0-3
RO
DebugMacFsm
0x0
4-7
RO
DebugMacTxRxCtrl
0x0
RO
DebugBitProcFsm
0x0
RO
DebugBitProcTx
0x1
RO
DebugBitProcRx
0x0
RO
DebugRxDetStatus
0x1
A2
Index
nanoLOC TRX Transceiver (NA5TR1) User Guide
Index
Symbols
CIRQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
CIRQ, configuring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
CReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
CVcc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Numerics
128 bit secret key, used in encryption . . . . . . . . . . . . . . . . . . 77
128 byte receive buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
128 byte register block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
128 byte transmit buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
14 bit code word . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
22 MHz bandwidth
enabled using FdmaEnable . . . . . . . . . . . . . . . . . . . 97, 206
22 MHz channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
256 byte receive buffer . . . . . . . . . . . . . . . . . . . . . . . . . 284, 285
256 byte shared buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
32 bit clock value
changed for each transmission . . . . . . . . . . . . . . . . . . . . 77
used in encryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
32.786 kHz Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
32.786 kHz clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
48 bit address
and IEEE standards . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
format of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
I/G address bit in . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
U/L address bit in . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
used in encryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
512 byte shared buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
80 MHz bandwidth
default value of FdmaEnable . . . . . . . . . . . . . . . . . . 97, 206
A
Accessing a register address location . . . . . . . . . . . . . . . . . . 43
Ack packet
and CSMA/CA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
and retransmissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
max time-out for receiving . . . . . . . . . . . . . . . . . . . . . . . 289
not for Brdcast packets . . . . . . . . . . . . . . . . . . . . . . . . . . 53
not for TimeB packets . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
not used in unconfirmed transmission . . . . . . . . . . . . . . 102
protocol for transmitting illustrated . . . . . . . . . . . . . . . . 100
reasons for a failed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
transmitted with lower power level . . . . . . . . . . . . . . . . . 93
when not received . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
address
locally administered . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
setting as group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
setting as individual . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
universally administered . . . . . . . . . . . . . . . . . . . . . . . . 104
address format
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Address1
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
all bits in set to 1 in Brdcast packets . . . . . . . . . . . . . . . 104
contains destination address . . . . . . . . . . . . . . . . . . . . . . 51
contains RTC in TimeB packets . . . . . . . . . . . . . . . . . . . 51
in Ack packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
in Brdcast packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
in Clr2S packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
in Data packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
in Req2S packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
in TimeB packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54, 55
Address2
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
contains source address . . . . . . . . . . . . . . . . . . . . . . . . . 51
in Brdcast packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
in Data packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
in Req2S packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
in TimeB packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
addresses
and promiscuous mode . . . . . . . . . . . . . . . . . . . . . . . . . 104
broadcast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
destination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
IEEE convention . . . . . . . . . . . . . . . . . . . . . . . . . . 251, 253
multicast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
addressing
message types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
AGC
controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
register settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
AGC calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
AGC hold
bit synchronization control . . . . . . . . . . . . . . . . . . . . . . 162
frame synchronization control . . . . . . . . . . . . . . . . . . . 162
AgcAmplitude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
AgcIntTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
AgcNregLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
AgcRangeOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
AgcRssiThres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
AgcThresHold1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
AgcThresHold2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
AgcValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
air interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
all-stations broadcast
set by I/G address bit . . . . . . . . . . . . . . . . . . . . . . . . . . 103
analog part, described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
analog pin CVcc described . . . . . . . . . . . . . . . . . . . . . . . . . 11
architecture, of nanoLOC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
ARQ
applied only to Data packets . . . . . . . . . . . . . . . . . . . . 101
transmit count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
transmit maximum . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
used to correct received data packets . . . . . . . . . . . . . . 99
Auto/Duplex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Auto/Simplex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
automatic repeat request. See ARQ
B
backoff counter
decremented until media busy . . . . . . . . . . . . . . . . . . . . 90
frozen until media detected idle . . . . . . . . . . . . . . . . . . . 90
initialization of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
backoff procedure
illustrated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
back-off slot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
back-off slot alignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
backoff time
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
designed to avoid collisions . . . . . . . . . . . . . . . . . . . . . . 87
backoff time slot. See BTS
bandwidth
reserving with higher power level . . . . . . . . . . . . . . . . . . 93
reserving with Req2S packet . . . . . . . . . . . . . . . . . . 49, 54
wasting with collisions . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Baseband
address format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
bit processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
data transmission control . . . . . . . . . . . . . . . . . . . . . . . . 99
link control management . . . . . . . . . . . . . . . . . . . . . . . . 58
logical channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
media access control . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
packets and frames . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
resetting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Baseband clock
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
enabling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
stopping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Baseband clock stopping distribution . . . . . . . . . . . . . . . . . . 20
baseband timer
event status of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
IRQ enabling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14, 140
start values of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
BasebandTimerStartValue . . . . . . . . . . . . . . . . . . . . . . . . . 169
battery voltage comparator
enabling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
level for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
setting output of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
battery, conserving with lower power level . . . . . . . . . . . . . . 93
BattMgmtCompare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
BattMgmtEnable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
BattMgmtThreshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
BbTimerIrqEnable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14, 140
BbTimerIrqStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
BER
indicated by bit error number and Length . . . . . . . . . . . . 77
bit detector unit
used by physical carrier sensing . . . . . . . . . . . . . . . . . . 88
bit error rate. See BER
bit errors, See BER
bit processing
Index
nanoLOC TRX Transceiver (NA5TR1) User Guide
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
bit scrambling
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
bit stream processes
and bit scrambling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
and CRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
and encryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
and forward error correction . . . . . . . . . . . . . . . . . . . . . . 75
illustrated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
bit synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Brdcast packet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
adjust output power for . . . . . . . . . . . . . . . . . . . . . . . . . 198
excessive use of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
have high priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
not acknowledged . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
TypeCode field redundant with . . . . . . . . . . . . . . . . . . . 104
broadcast address
contained in Address1 field . . . . . . . . . . . . . . . . . . . . . . . 54
broadcast message
all station address in . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
and Brdcast packets . . . . . . . . . . . . . . . . . . . . . . . . . 49, 53
setting address for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
to all stations in range . . . . . . . . . . . . . . . . . . . . . . . . 49, 53
broadcast packet. See Brdcast packet
BroadcastAddress
contained in Address1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
BTS (backoff time slot)
state of media determined by . . . . . . . . . . . . . . . . . . . . . 90
buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
128 byte receive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
128 byte transmit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
256 byte receive . . . . . . . . . . . . . . . . . . . . . . . . . . 284, 285
512 byte shared . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
BypassBbCrystal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
C
CA (collision avoidance)
backoff scheme used for . . . . . . . . . . . . . . . . . . . . . . . . . 87
started after sensing the channel . . . . . . . . . . . . . . . . . . 87
Carrier Sense Interframe Space Time . . . . . . . . . . . . . . . . . 289
carrier sense interframe space. See CIFS
carrier sensing
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
and three-way handshake illustrated . . . . . . . . . . . . . . . . 91
illustrated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
channelization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
22 MHz channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
enabled using FdmaEnable . . . . . . . . . . . . . . . . . . . 97, 206
channels
two possible with on-off keying . . . . . . . . . . . . . . . . . . . . 80
chirp filter capacitors . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85, 167
chirp generator
controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
chirp pulse
defined . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
frequency bandwidth of . . . . . . . . . . . . . . . . . . . . . . . . . . 79
illustrated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
modulaton systems of . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
symbol period of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Chirp Sequencer
CSQ writing example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
I and Q values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Chirp Sequencer clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
disabling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
enabling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
fields related to . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
using default matrix for TX . . . . . . . . . . . . . . . . . . . . . . . 21
Chirp Sequencer, about . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
ChirpFilterCaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
ChirpMatrix0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
ChirpMatrix1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
CIFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
CIFS (carrier sense interframe space) . . . . . . . . . . . . . . . . . . 88
cipher stream
same never used twice . . . . . . . . . . . . . . . . . . . . . . . . . . 77
cipher stream generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
ClearBasebandTimerInt . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
clock switcher, keeping stable . . . . . . . . . . . . . . . . . . . . . . . . 20
clocking structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Clr2S packet
and Req2S packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
and retransmissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
max time-out for receiving . . . . . . . . . . . . . . . . . . . . . . 289
reserving bandwidth for . . . . . . . . . . . . . . . . . . . . . . . . . 93
collision avoidance. See CA
contention window. See CW
controls
AGC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
receive bit detector . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
RSSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
CRC (cyclic redundancy check)
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
added to MACFrame . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
and CRC1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
and CRC2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
detects bit errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
type 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
type 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
type 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
CRC1
defined . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
added to ensure correct Data packet . . . . . . . . . . . . . . . 99
and carrier sensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
calculated over header fields . . . . . . . . . . . . . . . . . . . . . 75
receive status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
used only CRC type 1 . . . . . . . . . . . . . . . . . . . . . . . . . . 76
CRC2
defined . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
added to ensure correct Data packet . . . . . . . . . . . . . . . 99
calculated over Data field . . . . . . . . . . . . . . . . . . . . . . . . 75
configuring types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
encryption/decryption . . . . . . . . . . . . . . . . . . . . . . . . . . 204
not always required . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
uses all CRC types or none . . . . . . . . . . . . . . . . . . . . . . 76
Crc2Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
CryptEn (Encryption Enable switch) . . . . . . . . . . . . . . . . . . . 51
CryptID (Encryption ID) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
CryptSeqN (sequential numbering scheme) . . . . . . . . . . . . . 51
crystal (16 MHz)
enable digital mode of . . . . . . . . . . . . . . . . . . . . . . . . . 130
CSMA (Carrier Sense Multiple Access) . . . . . . . . . . . . . . . . . 87
CSMA/CA mode
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
and Clr2S packets . . . . . . . . . . . . . . . . . . . . . . . . . . 49, 55
and Req2S packets . . . . . . . . . . . . . . . . . . . . . . . . . 49, 54
how fairness is promoted in . . . . . . . . . . . . . . . . . . . . . . 87
CSQ, see Chirp Sequencer
CsqAsyMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
CsqDitherValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
CsqMemAddrInit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
CsqUse4Phases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
CsqUsePhaseShift . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
CsqUseRam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21, 190
CW (contention window) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
cyclic redundancy check. See CRC
D
D0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
D1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
D2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
D3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
D3lFixnMap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
D3lPomEn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
D3lPomLen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
Data field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
defined . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
in Brdcast packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
in Data packets . . . . . . . . . . . . . . . . . . . . . . . 52, 53, 54, 55
in TimeB packet used to transmit signature . . . . . . . . . . 54
in TimeB packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
minimum length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
of Brdcast packets (max length) . . . . . . . . . . . . . . . . . . 289
of Data packets (max length) . . . . . . . . . . . . . . . . . . . . 289
data link control. See DLC
Data packet
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
adjusting output power for . . . . . . . . . . . . . . . . . . . . . . 198
and CSMA/CA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
checking using CRC1 and CRC2 . . . . . . . . . . . . . . . . . . 99
collisions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
have lower priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Index
nanoLOC TRX Transceiver (NA5TR1) User Guide
FEC
configuring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
disabling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
enabling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
FEC (forward error correction)
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
and Hamming code . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
creates unnecessary overhead . . . . . . . . . . . . . . . . . . . 76
optional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
use with discretion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Field Description Tables, description . . . . . . . . . . . . . . . . . . . . 4
forward error correction. See FEC
FragC (fragmentation control) bit
must be set to 0 in Brdcast . . . . . . . . . . . . . . . . . . . . . . . 53
part of FrameControl field . . . . . . . . . . . . . . . . . . . . . . . . 51
set to 0 indicates last or no fragment . . . . . . . . . . . . . . 101
set to 1 indicates first or later fragments . . . . . . . . . . . 101
fragmentation
and prioritization scheme . . . . . . . . . . . . . . . . . . . . . . . . 94
controlling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
impossible with Brdcast packets . . . . . . . . . . . . . . . . . . 53
fragmentation control bit. See FragC bit
fragments
get higher priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
frame synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
frame transmission
confirming a request for . . . . . . . . . . . . . . . . . . . . . . 49, 55
requesting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49, 54
frame types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
FrameControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
in Brdcast packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
in Clr2S packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
in Req2S packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
in TimeB packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
G
GateAdjBitsyncEn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GateAdjFramesyncEn . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GateAdjThreshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GateSizeBitsync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GateSizeFramesync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GateSizeUnsync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Go2BitsyncThreshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Go2MapThresh1InBitsync . . . . . . . . . . . . . . . . . . . . . . . . . .
233
233
231
232
233
232
234
194
Hamming code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Hamming distance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
header
end of detected (index) . . . . . . . . . . . . . . . . . . . . . 146, 153
hidden node problem
and power level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
how resolved . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
HoldAgcInBitSync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
HoldAgcInFrameSync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
F
fast collision inference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
fast tuning mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
FCT
counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
enabling generator . . . . . . . . . . . . . . . . . . . . . . . . . 85, 167
measurement command . . . . . . . . . . . . . . . . . . . . . 85, 168
FctClockEn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
FctPeriod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
FDMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
FdmaEnable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97, 206
FeatureClockFreq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
I
I and Q sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
I and Q Values
formatting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
I/G address bit
identifies destination address . . . . . . . . . . . . . . . . . . . . 103
setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
idle media
detecting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
IEEE 48 bit address standard . . . . . . . . . . . . . . . . . . . . . . . 103
IEEE addressing convention . . . . . . . . . . . . . . . . . . . . . . . . 251
Index for RAM access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
indexes
transmitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
interrupt controls
for baseband . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
for receiver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
for transmitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
InvertRxClock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
IRQ
enabling baseband timer . . . . . . . . . . . . . . . . . . . . 14, 140
enabling receiver interrupt . . . . . . . . . . . . . . . . . . . . . . 140
enabling transmitter interrupts . . . . . . . . . . . . . . . . . . . 140
IRQ pin, configuring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
IrqDriver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14, 118
IrqPolarity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13, 118
Index
nanoLOC TRX Transceiver (NA5TR1) User Guide
K
Key feature
channeliztion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Common set of default register values . . . . . . . . . . . . . . . 8
Digital Dispersive Delay-Line (DDDL) . . . . . . . . . . . . . . . . 7
Programmable Pull-Resistors . . . . . . . . . . . . . . . . . . . . . . 8
ranging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Selectable symbol duration . . . . . . . . . . . . . . . . . . . . . . . . 7
Selectable symbol rate . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
L
LCCh (link control channel)
carries control information . . . . . . . . . . . . . . . . . . . . . . . . 57
indicated by LCh bit value . . . . . . . . . . . . . . . . . . . . . . . . 57
LCh (logical channel) bit
and LCMP messages . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
in TimeB packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
part of FrameControl field . . . . . . . . . . . . . . . . . . . . . . . . 51
LCM (link control management)
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
and logical channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
messages filtered and interpreted by . . . . . . . . . . . . . . . 58
LCMP (link control management protocol)
message have high priority . . . . . . . . . . . . . . . . . . . . . . . 58
poll command transmitted via . . . . . . . . . . . . . . . . . . . . . 87
transmitted in Data field . . . . . . . . . . . . . . . . . . . . . . . . . . 58
used to request a TimeB packet . . . . . . . . . . . . . . . . . . . 96
LeaveBitsyncThreshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
LeaveMapThresh1InBitsync . . . . . . . . . . . . . . . . . . . . . . . . . 193
Length
and bit errors indicates BER . . . . . . . . . . . . . . . . . . . . . . 77
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
in Brdcast packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
in Clr2S packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
in Data packet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
in Req2S packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
in TimeB packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
maximum length allowed . . . . . . . . . . . . . . . . . . . . . . . . . 51
used by virtual carrier sensing . . . . . . . . . . . . . . . . . . . . . 89
link control channel. See LCCh
link control management protocol. See LCMP
link control management See LCM
LLC
informed of bit errors in Data packet . . . . . . . . . . . . . . . . 77
informed of unsuccessful retransmission . . . . . . . . . . . . 90
reporting an aborted Tx to . . . . . . . . . . . . . . . . . . . . . . . . 95
LnaFreqAdjust . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
LNID (logical network ID) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
local oscillator
13 bit increment value . . . . . . . . . . . . . . . . . . . . . . . . . . 159
adjusting frequency of . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
enabling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82, 195
receive mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82, 158
Rx and Tx capacitors . . . . . . . . . . . . . . . . . . . . . . . 155, 156
locally administered address
set by U/L address bit . . . . . . . . . . . . . . . . . . . . . . . . . . 104
LODiv10enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
LOenable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
LoEnableFastTuning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
LoEnableLsbNeg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
LoFastTuningLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
logical channel bit. See LCh bit
logical channels
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
and the Data field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
in CDMA/CA mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
in Direct Access mode . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
logical network ID. See LNID
LoIntsEn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
LoIntsRawStat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
LoIntsReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
LoIrqEnable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14, 140
LoIrqStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
LoRxCapsValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
LoTargetValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
LoTuningReady . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149, 154
LoTxCapsValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
M
MAC Air Delay Time Maximum . . . . . . . . . . . . . . . . . . . . . . . 289
MacAckTimeMax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99, 289
MacAirDelTimeMax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
N
nanoLOC
32.768 kHz clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
analog part described . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
analog pin CVcc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Baseband clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
channelization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Index
nanoLOC TRX Transceiver (NA5TR1) User Guide
O
Off Chirp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
OffChirp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
ON section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
output power
adjusting for Ack packets . . . . . . . . . . . . . . . . . . . . . . . 199
adjusting for BrdCast packets . . . . . . . . . . . . . . . . . . . . 198
adjusting for Clr2S packets . . . . . . . . . . . . . . . . . . . . . . 199
adjusting for Data packets . . . . . . . . . . . . . . . . . . . . . . . 198
adjusting for Req2S packets . . . . . . . . . . . . . . . . . . . . . 199
adjusting for TimeB packets . . . . . . . . . . . . . . . . . . . . . 198
control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
P
packet slot
reading receive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
packet types
defined . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Brdcast (broadcast) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
packets
format of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Pages, selecting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
parity bit encoder
illustrated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
parity bits
in Syncword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
PhaseOffsetAck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
PhaseOffsetData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
physical carrier sensing
detects activity in media . . . . . . . . . . . . . . . . . . . . . . . . . 88
physical channels
separate possible with on/off keying . . . . . . . . . . . . . . . . 80
physical interface
and BER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
pinning diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Plus Folded Chirp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
poll command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
POnReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
power amplifier
adjusting bias current of . . . . . . . . . . . . . . . . . . . . . . . . 197
power down mode, selecting . . . . . . . . . . . . . . . . . . . . . . . . 128
power management
PowerDownFull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
PowerUp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23, 27
Ready . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
StandBy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
state model of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Power Management module . . . . . . . . . . . . . . . . . . . . . . . . . . 23
power management states . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
power management states model . . . . . . . . . . . . . . . . . . . . . . 24
power on/off
16 MHz crystal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
power up time, configuring . . . . . . . . . . . . . . . . . . . . . . . . . . 127
PowerDown . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
PowerDownFull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
PowerDownMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
PowerDownModeFull . . . . . . . . . . . . . . . . . . . . . . . . . 19, 25, 26
PowerDownModePad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
PowerUp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23, 27
PowerUp mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
PowerUpTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Preamble
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
required in all packets . . . . . . . . . . . . . . . . . . . . . . . . . . 49
preamble symbols number . . . . . . . . . . . . . . . . . . . . . . . . . 289
prioritized access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
prioritized packets
leads to unpredictable network performance . . . . . . . . . 94
PRN-sequence
how generated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
MACFRame fields scrambled with . . . . . . . . . . . . . . . . . 76
Programming Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
programming interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
promiscuous mode
and addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
and BBRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
pseudo-random noise sequence
in Syncword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Pulse types, setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
PulseDetDelay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
PWD section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
R
radio controlled circuitries, resetting . . . . . . . . . . . . . . . . . . 129
RAM access index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
RamIndex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43, 139
RamRtcReg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
RamRtcRx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17, 267
RamRtcTx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17, 265
RamRxBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
RamRxCryptClock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
RamRxDstAddr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
RamRxFragC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
RamRxLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
RamRxSrcAddr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
RamRxTransBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
RamStaAddr0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
RamStaAddr1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
RamTxBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
RamTxCryptClock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
RamTxDstAddr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
RamTxFragC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
RamTxLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
RamTxRxBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
RamTxRxCryptKey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
RamTxRxTransBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
RamTxTransBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
ranging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
RC-Oscillator (RCOSC)
and Leapfrog filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Ready . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Ready mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Real Time Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
read command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
time beacon commands . . . . . . . . . . . . . . . . . . . . 235, 236
TimeB auto mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
TimeB receive adjustment . . . . . . . . . . . . . . . . . . . . . . 236
TimeB transmit adjustment . . . . . . . . . . . . . . . . . . . . . . 235
real time clock value. See RTCvalue
Real Time Clock, reading . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Real Time Clock, updating . . . . . . . . . . . . . . . . . . . . . . . . . . 16
real time clock. See RTC
receive address
matching status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
segment End Station match . . . . . . . . . . . . . . . . . . . . . 180
segment intermediate station match . . . . . . . . . . . . . . 180
receive bit detector
bit synchronized gate duration . . . . . . . . . . . . . . . 232, 233
controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
disable down path . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
frame synchronized gate duration . . . . . . . . . . . . . . . . 233
sync frame adjustment . . . . . . . . . . . . . . . . . . . . . . . . . 233
sync gate adjustment . . . . . . . . . . . . . . . . . . . . . . . . . . 233
synchronization pulses threshold . . . . . . . . . . . . . . . . . 234
receive buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
overflow (index) . . . . . . . . . . . . . . . . . . . . . . . . . . 146, 153
ready to be read (index) . . . . . . . . . . . . . . . . . . . . 146, 152
receive correlator
error controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
error count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
error threshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Index
nanoLOC TRX Transceiver (NA5TR1) User Guide
receive CRC1
status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
receive signal strength indicator. See RSSI
receive time slot
activating receiver during . . . . . . . . . . . . . . . . . . . . . . . 184
defining start time slot . . . . . . . . . . . . . . . . . . . . . . . . . . 186
end of (index) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147, 153
time out (index) . . . . . . . . . . . . . . . . . . . . . . . . . . . 147, 153
received header
end of header detected (index) . . . . . . . . . . . . . . . 146, 153
received packet
type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
received packet slot, reading . . . . . . . . . . . . . . . . . . . . . . . . 185
receiver
decryption sequence reset . . . . . . . . . . . . . . . . . . . . . . 223
encryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
LNA frequency adjustment . . . . . . . . . . . . . . . . . . . . . . 197
mode controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
receiver interrupt
enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
event status of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Register block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
register space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
repetition counts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
repetition periods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Req2S packet
and three way handshakes . . . . . . . . . . . . . . . . . . . . . . . 91
fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
have lower priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
reserving bandwidth for . . . . . . . . . . . . . . . . . . . . . . . . . . 93
requesting a frame transmission . . . . . . . . . . . . . . . . . . . . 49, 54
ResetBbClockGate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19, 129
ResetBbRadioCtrl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19, 129
retransmission attempts
max allowed for Data packets . . . . . . . . . . . . . . . . . . . . 289
retransmission counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
retransmission filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
retransmissions
and CSMA/CA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
applied only to Data packets . . . . . . . . . . . . . . . . . . . . . . 90
defined . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
limiting unsuccessful . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
maximum limit to . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
reasons for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
time-out limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
retransmit counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90, 99
Revision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
RfLoRxMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
RfRxCompValueI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
RfRxCompValueQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
RSSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
set threshold value . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
RSSI (received signal strength indicator)
used by physical carrier sensing . . . . . . . . . . . . . . . . . . . 88
RTC
as wake-up event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
RTC (real time clock)
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
and time slots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
based on modulo-2 48 bit counter . . . . . . . . . . . . . . . . . . 96
illustrated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
methods of synchronizing in network . . . . . . . . . . . . . . . 96
reference maintained by master station . . . . . . . . . . . . . 96
time in bits 15 to 47 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
RtcCmdRd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16, 237
RtcCmdWr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16, 237
RtcReg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
RtcTimeBAutoMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17, 238
RtcTimeBRxAdj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17, 236
RtcTimeBTxAdj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17, 235
RTCvalue
in Address1 field of a TimeB packet . . . . . . . . . . . . . . . . 54
in receiving stations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
in transmitting stations . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
transmitting station must adjust . . . . . . . . . . . . . . . . . . . . 54
RX Time Slot End . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
RxAddrMatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
RxAddrMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
RxAddrSegDevIdL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
RxAddrSegEsMatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
RxAddrSegEsMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
RxAddrSegIsMatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
RxAddrSegIsMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
RxArqMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
RxBrdcastEn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
RxBufferCmd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
RxBufferRdy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
RxBufferRdy (index) . . . . . . . . . . . . . . . . . . . . . . . . . . 146, 152
RxCmdStart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
RxCmdStop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
RxCorrBitErr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
RxCorrErrThres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
RxCrc1Stat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
RxCrc2Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
RxCrc2Stat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
RxCryptEn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
RxCryptId . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
RxCryptSeqN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
RxCryptSeqReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
RxDataEn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
RxEnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
RxEnd (index) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146, 153
RxFec1BitErr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
RxHeaderEnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
RxHeaderEnd (index) . . . . . . . . . . . . . . . . . . . . . . . . . 146, 153
RxIntsEn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
RxIntsRawStat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
RxIntsReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
RxIrqEnable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14, 140
RxIrqStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
RxOverflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
RxOverflow (index) . . . . . . . . . . . . . . . . . . . . . . . 146, 152, 153
RxPacketSlot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
RxPacketType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
RxTimeBCrc1Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
RxTimeBEn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
RxTimeSlotControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
RxTimeSlotEnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147, 187
RxTimeSlotEnd (index) . . . . . . . . . . . . . . . . . . . . . . . . 147, 153
RxTimeSlotStart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
RxTimeSlotTOut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
RxTimeSlotTOut (index) . . . . . . . . . . . . . . . . . . . . . . . 147, 153
RxTransBytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
S
ScrambIerInit field
description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
not scrambled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
scrambling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
all fields except ScramblerInit . . . . . . . . . . . . . . . . . . . . . 76
security
and LCMP messages . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Select memory type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Selecting a page in a memory type . . . . . . . . . . . . . . . . . . . . 40
Selecting, memory address . . . . . . . . . . . . . . . . . . . . . . . . . . 40
SeqN (sequence numbering) bit
part of FrameControl field . . . . . . . . . . . . . . . . . . . . . . . . 51
set to 0 in Brdcast packets . . . . . . . . . . . . . . . . . . . 53, 101
use of explained . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
used to filter out retransmissions . . . . . . . . . . . . . . . . . 101
SeqN bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
sequence numbering bit. See SeqN bit
sequential numbering scheme
provided by EncryptionControl field . . . . . . . . . . . . . . . . 51
Setting a shadow variable . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Setting the Value of Reserved Fields . . . . . . . . . . . . . . . . . . . 4
setting using RxPacketType . . . . . . . . . . . . . . . . . . . . . . . . 175
Shadow variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
shift register
initialized with 7 bit value . . . . . . . . . . . . . . . . . . . . . . . . 76
SIFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
SIFS (switching interframe space) . . . . . . . . . . . . . . . . . . 91, 99
signal flow, described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
signature
in TimeB packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
slave station
responsible for maintaining its RTC . . . . . . . . . . . . . . . . 96
updates RTC by TimeB packet . . . . . . . . . . . . . . . . . . . 96
slave stations
defining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
role of in TDMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
source address
contained in Address2 . . . . . . . . . . . . . . . . . . . . . . . 51, 54
SourceAddress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
SPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
SPI Access
first . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
second . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Index
nanoLOC TRX Transceiver (NA5TR1) User Guide
T
Tail
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
fixed length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
required in all packets . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
used as delimiter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
tail symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
TDMA mode
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
direct access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
flexible according to requirements . . . . . . . . . . . . . . . . . . 94
three-way handshake
and hidden node problem . . . . . . . . . . . . . . . . . . . . . . . . 91
even unconfigured stations respond to . . . . . . . . . . . . . . 93
fast collision inference . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
illustrated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
not an unconfirmed transmission . . . . . . . . . . . . . . . . . 102
not used for Brdcast and TimeB packets . . . . . . . . . . . . 91
time deviation between Tx and Rx stations . . . . . . . . . . . . . . 95
time slot alignment. See TSA
time slot duration. See TSD
time slot identifier. See TSID
time slot repetition count. See TSRC
time slot repetition period. See TSRP
time slot table. See TST
time slot unit. See TSU
time slot. See TS
time slotted access. See TDMA mode
TimeB packet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
described . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
excessive use of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
have high priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
slave station updates RTC by . . . . . . . . . . . . . . . . . . . . . 96
used to update RTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
TimeB packets
adjust output power for . . . . . . . . . . . . . . . . . . . . . . . . . 198
and RTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
ToaOffsetMeanAck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
ToaOffsetMeanAckValid . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
ToaOffsetMeanData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
ToaOffsetMeanDataValid . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
transceiver
configuring CRC2 types . . . . . . . . . . . . . . . . . . . . . . . . 203
encryption/decryption clock mode . . . . . . . . . . . . . . . . . 204
encryption/decryption CRC2 mode . . . . . . . . . . . . . . . . 204
forward error correction . . . . . . . . . . . . . . . . . . . . . . . . . 204
SyncWord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
transmission path check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
transmissions
aborted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
deferring because of Clr2S . . . . . . . . . . . . . . . . . . . . . . . 91
deferring because of Req2S . . . . . . . . . . . . . . . . . . . . . . 91
delaying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
getting higher priority for . . . . . . . . . . . . . . . . . . . . . . . . . 94
Index
nanoLOC TRX Transceiver (NA5TR1) User Guide
U
U/L address bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
identifies administration of address . . . . . . . . . . . . . . . . 104
UDCh (user data channel)
carries user data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
illustrated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
indicated by LCh value 0 . . . . . . . . . . . . . . . . . . . . . . . . . 57
unconfirmed data transmission . . . . . . . . . . . . . . . . . . . . . . . 102
not applicable to three-way handshake . . . . . . . . . . . . . 102
unicast message
set by I/G address bit . . . . . . . . . . . . . . . . . . . . . . . . . . 103
setting address for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
universally administered address . . . . . . . . . . . . . . . . . . . . . 104
set by U/L address bit . . . . . . . . . . . . . . . . . . . . . . . . . . 104
V
Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Virtual carrier sensing
predicts activity in media . . . . . . . . . . . . . . . . . . . . . . . . 89
W
Wake-up event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
WakeUpTimeByte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18, 119
WakeUpTimeWe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18, 120
WritePulls4Pads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
WritePulls4Spi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
X
Xtal32kN
Xtal32kP
Xtal32MN
Xtal32MP
........................................
........................................
........................................
........................................
12
12
12
12
Revision History
nanoLOC TRX Transceiver (NA5TR1) User Guide
Revision History
Date
Version
Description/Changes
Internal Only
1.00
Initial Version - Preliminary. This document contains information on a pre-engineering chip. Specifications and information herein are subject to change without notice.
2006-12-21
1.01
Change field 2 to field 3 in 0x08 Power On/Off Baseband Crystal and Clock
2007-02-23
1.02
2007-05-24
1.03
2008-06-06
2.00
Further Information:
For more information about this product and other products from Nanotron Technologies, contact a sales
representative at the following address:
Nanotron Technologies GmbH
Alt-Moabit 60
10555 Berlin, Germany
Phone: +49 30 399 954 - 0
Fax: +49 30 399 954 - 188
Email: sales@nanotron.com
Internet: www.nanotron.com