ON Semiconductor RSL10 Application guide

© SCILLC, 2017
Previous Edition © 2016
“All Rights Reserved”
RSL10 Hardware Reference
M-20829-008
October 2017

RSL10 Hardware Reference
Sections of this manual relating to the ARM Cortex-M3 processor have been republished from the Cortex-M3
Technical Reference (version r2p1) with permission.
ON Semiconductor and are registered trademarks of Semiconductor Components Industries, LLC (SCILLC). ARM, the ARM logo and Cortex are trademarks or
registered trademarks of ARM Ltd. Bluetooth is a registered trademark of Bluetooth SIG, Inc. SCILLC owns the rights to a number of patents, trademarks, copyrights, trade
secrets, and other intellectual property. A listing of SCILLC’s product/patent coverage may be accessed at www.onsemi.com/site/pdf/Patent-Marking.pdf. SCILLC reserves
the right to make changes without further notice to any products herein. SCILLC makes no warranty, representation or guarantee regarding the suitability of its products for
any particular purpose, nor does SCILLC assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability,
including without limitation special, consequential or incidental damages. “Typical” parameters which may be provided in SCILLC data sheets and/or specifications can and
do vary in different applications and actual performance may vary over time. All operating parameters, including “Typicals” must be validated for each customer application by
customer’s technical experts. SCILLC does not convey any license under its patent rights nor the rights of others. SCILLC products are not designed, intended, or authorized
for use as components in systems intended for surgical implant into the body, or other applications intended to support or sustain life, or for any other application in which the
failure of the SCILLC product could create a situation where personal injury or death may occur. Should Buyer purchase or use SCILLC products for any such unintended or
unauthorized application, Buyer shall indemnify and hold SCILLC and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs,
damages, and expenses, and reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death associated with such unintended or
unauthorized use, even if such claim alleges that SCILLC was negligent regarding the design or manufacture of the part. SCILLC is an Equal Opportunity/Affirmative Action
Employer. This literature is subject to all applicable copyright laws and is not for resale in any manner.
PUBLICATION ORDERING INFORMATION
LITERATURE FULFILLMENT:
Literature Distribution Center for ON Semiconductor
P.O. Box 5163, Denver, Colorado 80217 USA
Phone: 303-675-2175 or 800-344-3860 Toll Free USA/Canada
Fax: 303-675-2176 or 800-344-3867 Toll Free USA/Canada
Email: [email protected]
N. American Technical Support: 800-282-9855 Toll
Free USA/Canada
Europe, Middle East and Africa Technical Support:
Phone: 421 33 790 2910
Japan Customer Focus Center: Phone: 81-3-5817-
1050
ON Semiconductor Website: www.onsemi.com
Order Literature: http://www.onsemi.com/orderlit
For additional information, please contact your
local Sales Representative

ON Semiconductor
www.onsemi.com
3
Page
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
1.1 Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
1.2 Intended Audience . . . . . . . . . . . . . . . . . . . . . . . . . . .18
1.3 Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
1.4 Manual Organization . . . . . . . . . . . . . . . . . . . . . . . . . .18
1.5 Further Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
2. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
2.1 System Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . .20
2.2 Radio System Architecture . . . . . . . . . . . . . . . . . . . . . . . .21
2.3 Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
2.4 Clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
2.5 Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
2.6 Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
2.7 Peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
2.8 Audio Components . . . . . . . . . . . . . . . . . . . . . . . . . . .25
2.9 SoC Identification . . . . . . . . . . . . . . . . . . . . . . . . . . .25
2.9.1 Device Identification Register . . . . . . . . . . . . . . . . . . . . . 26
2.9.1.1 AHBREGS_CHIP_ID_NUM . . . . . . . . . . . . . . . . . . . 26
3. ARM Cortex-M3 Processor . . . . . . . . . . . . . . . . . . . . . . . . . . .28
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
3.1.1 ARM Cortex-M3 Processor Loop Cache Register . . . . . . . . . . . . . . . 28
3.1.1.1 SYSCTRL_CSS_LOOP_CACHE_CFG . . . . . . . . . . . . . . . . 29
3.2 Debug Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
3.2.1 Debug Port Register. . . . . . . . . . . . . . . . . . . . . . . . . 30
3.2.1.1 DBG_LOCK . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.3 IP Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31
3.3.1 IP Protection Registers . . . . . . . . . . . . . . . . . . . . . . . . 31
3.3.1.1 SYSCTRL_DBG_LOCK . . . . . . . . . . . . . . . . . . . . . 31
3.3.1.2 SYSCTRL_DBG_LOCK_KEY . . . . . . . . . . . . . . . . . . . 32
3.4 Activity Counters . . . . . . . . . . . . . . . . . . . . . . . . . . .32
3.4.1 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.4.1.1 SYSCTRL_CNT_CTRL . . . . . . . . . . . . . . . . . . . . . 33
3.4.1.2 SYSCTRL_SYSCLK_CNT . . . . . . . . . . . . . . . . . . . . 33
3.4.1.3 SYSCTRL_CM3_CNT . . . . . . . . . . . . . . . . . . . . . 33
3.4.1.4 SYSCTRL_LPDSP32_CNT . . . . . . . . . . . . . . . . . . . . 33
3.4.1.5 SYSCTRL_FLASH_READ_CNT . . . . . . . . . . . . . . . . . . 33
4. LPDSP32 Processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
4.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
4.2 System Integration . . . . . . . . . . . . . . . . . . . . . . . . . . .34
4.3 Memory Support . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
4.4 Interrupt Handling . . . . . . . . . . . . . . . . . . . . . . . . . . .35
4.5 LPDSP32 Debug Port . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.6 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36
4.6.1 SYSCTRL_DSS_CTRL . . . . . . . . . . . . . . . . . . . . . . . 36
Table of Contents

RSL10 Hardware Reference
www.onsemi.com
4
4.6.2 SYSCTRL_DSS_CMD . . . . . . . . . . . . . . . . . . . . . . . . 36
4.6.3 SYSCTRL_DSS_LOOP_CACHE_CFG . . . . . . . . . . . . . . . . . . 37
4.6.4 SYSCTRL_LPDSP32_DEBUG_CFG . . . . . . . . . . . . . . . . . . . 37
5. Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.1 Power Supply Overview . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.1.1 Power Management Unit . . . . . . . . . . . . . . . . . . . . . . . 39
5.2 Power Supply Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.2.1 Battery Supply Voltage (VBAT) . . . . . . . . . . . . . . . . . . . . . 39
5.2.2 Digital Output Supply Voltage (VDDO) . . . . . . . . . . . . . . . . . . 40
5.3 Internal Power Supply Voltages . . . . . . . . . . . . . . . . . . . . . . 40
5.3.1 System Supply Voltage (VCC) . . . . . . . . . . . . . . . . . . . . . 40
5.3.1.1 VCC and DC-DC Converter Registers . . . . . . . . . . . . . . . . . 42
5.3.1.1.1 ACS_VCC_CTRL . . . . . . . . . . . . . . . . . . . . . 42
5.3.2 Internal Band Gap Reference Voltage . . . . . . . . . . . . . . . . . . . 43
5.3.2.1 Bandgap Converter Registers . . . . . . . . . . . . . . . . . . . . 43
5.3.2.1.1 ACS_BG_CTRL . . . . . . . . . . . . . . . . . . . . . . 44
5.3.3 RF Supply Voltage . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.3.3.1 RF Block Configuration and Control Registers . . . . . . . . . . . . . . 45
5.3.3.1.1 ACS_VDDRF_CTRL . . . . . . . . . . . . . . . . . . . . 45
5.3.3.1.2 ACS_VDDPA_CTRL . . . . . . . . . . . . . . . . . . . . 46
5.3.4 Digital Supply Voltages . . . . . . . . . . . . . . . . . . . . . . . . 46
5.3.4.1 Digital Supply Configuration / Control Registers. . . . . . . . . . . . . . 47
5.3.4.1.1 ACS_VDDC_CTRL. . . . . . . . . . . . . . . . . . . . . 48
5.3.4.1.2 ACS_VDDM_CTRL . . . . . . . . . . . . . . . . . . . . 48
5.3.4.1.3 ACS_VDDRET_CTRL. . . . . . . . . . . . . . . . . . . . 49
5.3.5 Analog Supply Voltage (VDDA) . . . . . . . . . . . . . . . . . . . . . 50
5.3.5.1 Analog Voltage Configuration and Control Registers . . . . . . . . . . . . 51
5.3.5.1.1 ACS_VDDA_CP_CTRL . . . . . . . . . . . . . . . . . . . 51
5.4 Power Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.4.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.4.2 Measuring Power Mode Current Consumption . . . . . . . . . . . . . . . . 51
5.4.3 Run Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.4.4 Standby Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.4.4.1 Wakeup Sources . . . . . . . . . . . . . . . . . . . . . . . . 52
5.4.4.2 ACS_PWR_MODES_CTRL . . . . . . . . . . . . . . . . . . . . 53
5.4.4.3 ACS_WAKEUP_CFG . . . . . . . . . . . . . . . . . . . . . . 53
5.4.4.4 ACS_WAKEUP_STATE . . . . . . . . . . . . . . . . . . . . . 55
5.4.5 Sleep Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.4.5.1 Wakeup from Retention Memory in Sleep Mode . . . . . . . . . . . . . . 57
5.4.6 ACS_WAKEUP_CTRL. . . . . . . . . . . . . . . . . . . . . . . . 59
5.4.7 SYSCTRL_MEM_ACCESS_CFG . . . . . . . . . . . . . . . . . . . . 61
5.4.8 SYSCTRL_WAKEUP_ADDR . . . . . . . . . . . . . . . . . . . . . 63
5.4.9 SYSCTRL_WAKEUP_PAD . . . . . . . . . . . . . . . . . . . . . . 63

ON Semiconductor
www.onsemi.com
5
5.4.10 ACS_WAKEUP_GP_DATA . . . . . . . . . . . . . . . . . . . . . . 63
5.5 Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.5.1 Reset Status Register . . . . . . . . . . . . . . . . . . . . . . . . 65
5.5.1.1 DIG_RESET_STATUS . . . . . . . . . . . . . . . . . . . . . . 66
5.5.2 ACS_RESET_STATUS. . . . . . . . . . . . . . . . . . . . . . . . 67
5.6 Analog Test Signals . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.6.1 Analog Output Configuration Register . . . . . . . . . . . . . . . . . . . 69
5.6.2 ACS_AOUT_CTRL . . . . . . . . . . . . . . . . . . . . . . . . . 69
6. Clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
6.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
6.2 Clock Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
6.2.1 RC Oscillator . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
6.2.2 48 MHz Crystal Oscillator . . . . . . . . . . . . . . . . . . . . . . . 75
6.2.3 Standby RC Oscillator . . . . . . . . . . . . . . . . . . . . . . . . 75
6.2.4 32 kHz Crystal Oscillator . . . . . . . . . . . . . . . . . . . . . . . 76
6.2.5 External Clock Input (EXTCLK) . . . . . . . . . . . . . . . . . . . . 76
6.2.6 Debug Port Clock . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.2.7 Clock Generation Registers . . . . . . . . . . . . . . . . . . . . . . 77
6.2.7.1 ACS_RCOSC_CTRL . . . . . . . . . . . . . . . . . . . . . . 77
6.2.7.2 ACS_XTAL32K_CTRL . . . . . . . . . . . . . . . . . . . . . 78
6.3 Clock Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . 79
6.3.1 System Clock (SYSCLK) . . . . . . . . . . . . . . . . . . . . . . . 79
6.3.2 Standby Clock (STANDBYCLK) . . . . . . . . . . . . . . . . . . . . 80
6.3.3 Slow Clock (SLOWCLK) . . . . . . . . . . . . . . . . . . . . . . . 80
6.3.4 Baseband Clock (BBCLK) and Other Clocks for the Bluetooth Low Energy Baseband . . . . 81
6.3.5 Real-Time Clock (RTC). . . . . . . . . . . . . . . . . . . . . . . . 81
6.3.6 User Clock (USRCLK) . . . . . . . . . . . . . . . . . . . . . . . . 82
6.3.7 Power Supply Clocks . . . . . . . . . . . . . . . . . . . . . . . . 82
6.3.8 Interface Clocks . . . . . . . . . . . . . . . . . . . . . . . . . . 82
6.3.9 Clock Distribution Registers . . . . . . . . . . . . . . . . . . . . . . 84
6.3.9.1 CLK_SYS_CFG . . . . . . . . . . . . . . . . . . . . . . . . 84
6.3.9.2 CLK_DIV_CFG0 . . . . . . . . . . . . . . . . . . . . . . . 85
6.3.9.3 CLK_DIV_CFG1 . . . . . . . . . . . . . . . . . . . . . . . 85
6.3.9.4 CLK_DIV_CFG2 . . . . . . . . . . . . . . . . . . . . . . . 87
6.3.9.5 ACS_RTC_CFG . . . . . . . . . . . . . . . . . . . . . . . . 88
6.3.9.6 ACS_RTC_COUNT. . . . . . . . . . . . . . . . . . . . . . . 88
6.3.9.7 ACS_RTC_CTRL . . . . . . . . . . . . . . . . . . . . . . . 88
6.4 Clock Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.4.1 Clock Detector and System Monitor . . . . . . . . . . . . . . . . . . . . 89
6.4.2 External Clock Detector . . . . . . . . . . . . . . . . . . . . . . . 90
6.4.3 Clock Detector Registers . . . . . . . . . . . . . . . . . . . . . . . 91
6.4.3.1 CLK_DET_CFG . . . . . . . . . . . . . . . . . . . . . . . . 91
6.4.3.2 CLK_DET_STATUS . . . . . . . . . . . . . . . . . . . . . . 92
6.4.3.3 ACS_CLK_DET_CTRL . . . . . . . . . . . . . . . . . . . . . 92

RSL10 Hardware Reference
www.onsemi.com
6
7. Memory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
7.1 Memory Architecture . . . . . . . . . . . . . . . . . . . . . . . . . 94
7.1.1 Memory Instances . . . . . . . . . . . . . . . . . . . . . . . . . 94
7.1.2 Memory Buses . . . . . . . . . . . . . . . . . . . . . . . . . . 95
7.1.3 Memory Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . 95
7.2 Memory Map and Usage . . . . . . . . . . . . . . . . . . . . . . . . 96
7.2.1 ARM Cortex-M3 Processor Memory Usage . . . . . . . . . . . . . . . . . 96
7.2.2 Flash Memory. . . . . . . . . . . . . . . . . . . . . . . . . . . 98
7.2.2.1 Non-Volatile Record (NVR) Sectors. . . . . . . . . . . . . . . . . . 98
7.2.2.2 Redundancy Sectors . . . . . . . . . . . . . . . . . . . . . . . 99
7.2.2.3 Error — Correction Coding . . . . . . . . . . . . . . . . . . . . 99
7.2.2.4 Flash Delay Timings. . . . . . . . . . . . . . . . . . . . . . . 100
7.2.3 RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
7.2.3.1 Program RAM . . . . . . . . . . . . . . . . . . . . . . . . 100
7.2.3.2 Data RAM . . . . . . . . . . . . . . . . . . . . . . . . . . 101
7.2.3.3 Shared RAM Instances . . . . . . . . . . . . . . . . . . . . . . 101
7.2.4 Other Memory Mapped Areas. . . . . . . . . . . . . . . . . . . . . . 102
7.2.4.1 Peripherals and Interfaces . . . . . . . . . . . . . . . . . . . . . 102
7.2.4.2 Private Peripherals . . . . . . . . . . . . . . . . . . . . . . . 102
7.2.5 LPDSP32 DSP Memory Usage . . . . . . . . . . . . . . . . . . . . . 102
7.2.5.1 Program Memory . . . . . . . . . . . . . . . . . . . . . . . 102
7.2.5.2 Data Memory . . . . . . . . . . . . . . . . . . . . . . . . . 103
7.2.6 Bluetooth Low Energy Baseband (BB) Memory Usage . . . . . . . . . . . . . . 105
7.2.6.1 Exchange Memory . . . . . . . . . . . . . . . . . . . . . . . 105
7.3 Flash Memory Operations . . . . . . . . . . . . . . . . . . . . . . . . 105
7.3.1 Reading and Writing Flash Memory . . . . . . . . . . . . . . . . . . . . 105
7.3.2 Low Power Read Mode . . . . . . . . . . . . . . . . . . . . . . . . 107
7.3.3 Sequential / Non-Sequential Writing. . . . . . . . . . . . . . . . . . . . 107
7.3.3.1 Non-Sequential Write . . . . . . . . . . . . . . . . . . . . . . 107
7.3.3.2 Sequential Write . . . . . . . . . . . . . . . . . . . . . . . . 107
7.3.4 Locking / Unlocking Mechanism . . . . . . . . . . . . . . . . . . . . . 108
7.3.4.1 Locking Mechanism. . . . . . . . . . . . . . . . . . . . . . . 108
7.3.4.2 Unlocking Mechanism . . . . . . . . . . . . . . . . . . . . . . 108
7.4 Flash Copier . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
7.4.1 Block Characteristics . . . . . . . . . . . . . . . . . . . . . . . . 108
7.5 Memory Registers . . . . . . . . . . . . . . . . . . . . . . . . . . 110
7.5.1 SYSCTRL_FLASH_OVERLAY_CFG . . . . . . . . . . . . . . . . . . . 110
7.5.2 SYSCTRL_FLASH_READ_CNT . . . . . . . . . . . . . . . . . . . . 111
7.5.3 SYSCTRL_MEM_ERROR . . . . . . . . . . . . . . . . . . . . . . 111
7.5.4 SYSCTRL_MEM_POWER_CFG . . . . . . . . . . . . . . . . . . . . 112
7.5.5 SYSCTRL_MEM_ACCESS_CFG . . . . . . . . . . . . . . . . . . . . 114
7.5.6 SYSCTRL_MEM_RETENTION_CFG. . . . . . . . . . . . . . . . . . . 116
7.5.7 SYSCTRL_MEM_ARBITER_CFG . . . . . . . . . . . . . . . . . . . . 117
7.5.8 SYSCTRL_MEM_TIMING_CFG . . . . . . . . . . . . . . . . . . . . 120

ON Semiconductor
www.onsemi.com
7
7.6 Flash Memory Registers . . . . . . . . . . . . . . . . . . . . . . . . . 121
7.6.1 FLASH_IF_CTRL . . . . . . . . . . . . . . . . . . . . . . . . . 121
7.6.2 FLASH_MAIN_WRITE_UNLOCK. . . . . . . . . . . . . . . . . . . . 122
7.6.3 FLASH_MAIN_CTRL . . . . . . . . . . . . . . . . . . . . . . . . 123
7.6.4 FLASH_DELAY_CTRL . . . . . . . . . . . . . . . . . . . . . . . 123
7.6.5 FLASH_CMD_CTRL . . . . . . . . . . . . . . . . . . . . . . . . 124
7.6.6 FLASH_IF_STATUS . . . . . . . . . . . . . . . . . . . . . . . . 125
7.6.7 FLASH_ADDR . . . . . . . . . . . . . . . . . . . . . . . . . . 127
7.6.8 FLASH_DATA . . . . . . . . . . . . . . . . . . . . . . . . . . 127
7.6.9 FLASH_NVR_WRITE_UNLOCK . . . . . . . . . . . . . . . . . . . . 127
7.6.10 FLASH_NVR_CTRL . . . . . . . . . . . . . . . . . . . . . . . . 127
7.6.11 FLASH_PATCH_ADDR . . . . . . . . . . . . . . . . . . . . . . . 128
7.6.12 FLASH_COPY_CFG . . . . . . . . . . . . . . . . . . . . . . . . 128
7.6.13 FLASH_COPY_CTRL . . . . . . . . . . . . . . . . . . . . . . . 129
7.6.14 FLASH_COPY_SRC_ADDR_PTR . . . . . . . . . . . . . . . . . . . 129
7.6.15 FLASH_COPY_DST_ADDR_PTR . . . . . . . . . . . . . . . . . . . 129
7.6.16 FLASH_COPY_WORD_CNT . . . . . . . . . . . . . . . . . . . . . 130
7.6.17 FLASH_ECC_CTRL . . . . . . . . . . . . . . . . . . . . . . . . 130
7.6.18 FLASH_ECC_STATUS . . . . . . . . . . . . . . . . . . . . . . . 130
7.6.19 FLASH_ECC_ERROR_ADDR . . . . . . . . . . . . . . . . . . . . . 131
7.6.20 FLASH_ECC_UNCOR_ERROR_CNT . . . . . . . . . . . . . . . . . . 131
7.6.21 FLASH_ECC_COR_ERROR_CNT . . . . . . . . . . . . . . . . . . . 131
8. RF Front-End . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
8.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
8.1.1 SYSCTRL_RF_POWER_CFG . . . . . . . . . . . . . . . . . . . . . 135
8.1.2 SYSCTRL_RF_ACCESS_CFG . . . . . . . . . . . . . . . . . . . . . 135
8.2 System Integration . . . . . . . . . . . . . . . . . . . . . . . . . . 135
8.2.1 48 MHz Crystal Oscillator . . . . . . . . . . . . . . . . . . . . . . . 136
8.3 Packet Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
8.3.1 Packet Format . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
8.3.1.1 Preamble . . . . . . . . . . . . . . . . . . . . . . . . . . 138
8.3.1.2 Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
8.3.1.3 Packet Length. . . . . . . . . . . . . . . . . . . . . . . . . 139
8.3.1.4 Address. . . . . . . . . . . . . . . . . . . . . . . . . . . 139
8.3.1.5 Multi-Frame . . . . . . . . . . . . . . . . . . . . . . . . . 140
8.3.2 CRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
8.3.3 Accessing the FIFOs. . . . . . . . . . . . . . . . . . . . . . . . . 141
8.3.4 FIFO Status . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
8.4 Modulator and Radio Configuration . . . . . . . . . . . . . . . . . . . . . 142
8.4.1 Radio Configuration . . . . . . . . . . . . . . . . . . . . . . . . . 143
8.4.1.1 Data Rate . . . . . . . . . . . . . . . . . . . . . . . . . . 143
8.4.1.1.1 Fractional Data Rate. . . . . . . . . . . . . . . . . . . . . 143
8.4.1.2 Central Frequency . . . . . . . . . . . . . . . . . . . . . . . 143

RSL10 Hardware Reference
www.onsemi.com
8
8.4.1.3 Channels . . . . . . . . . . . . . . . . . . . . . . . . . . 144
8.4.2 Tx Specific Configuration . . . . . . . . . . . . . . . . . . . . . . . 144
8.4.2.1 Pulse Shape . . . . . . . . . . . . . . . . . . . . . . . . . 144
8.4.2.2 Modulation Index . . . . . . . . . . . . . . . . . . . . . . . 145
8.4.2.3 Interpolator . . . . . . . . . . . . . . . . . . . . . . . . . 146
8.4.2.4 Power Amplifier (PA) Source . . . . . . . . . . . . . . . . . . . . 146
8.4.3 Rx Specific Configuration . . . . . . . . . . . . . . . . . . . . . . . 147
8.4.3.1 Channel Filter Configuration . . . . . . . . . . . . . . . . . . . . 147
8.4.3.2 Phase and RSSI Fractional Decimation . . . . . . . . . . . . . . . . . 147
8.4.3.3 Carrier Recovery . . . . . . . . . . . . . . . . . . . . . . . . 149
8.4.3.3.1 Rough Carrier Recovery . . . . . . . . . . . . . . . . . . . 149
8.4.3.3.2 Fine Carrier Recovery . . . . . . . . . . . . . . . . . . . . 149
8.4.3.3.3 Carrier Recovery Boundaries . . . . . . . . . . . . . . . . . . 150
8.4.3.3.4 RSSI Detection . . . . . . . . . . . . . . . . . . . . . . 151
8.4.3.3.5 Delay Line Synchronization . . . . . . . . . . . . . . . . . . 153
8.4.3.4 Matched Filtering . . . . . . . . . . . . . . . . . . . . . . . 153
8.4.3.5 Clock and Data-Rate Recovery . . . . . . . . . . . . . . . . . . . 154
8.4.3.6 Decision . . . . . . . . . . . . . . . . . . . . . . . . . . 156
8.4.3.6.1 Viterbi Algorithm . . . . . . . . . . . . . . . . . . . . . 156
8.4.3.7 RSSI Filtering and AGC . . . . . . . . . . . . . . . . . . . . . 156
8.4.3.7.1 Peak Detector . . . . . . . . . . . . . . . . . . . . . . . 157
8.4.3.7.2 RSSI and Peak-Detector Combined AGC Strategy . . . . . . . . . . . 158
8.4.4 Continuous Wave (CW) Configuration . . . . . . . . . . . . . . . . . . . 158
8.5 RF Front-End Registers . . . . . . . . . . . . . . . . . . . . . . . . . 159
8.5.1 RF_REG00 . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
8.5.2 RF_REG01 . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
8.5.3 RF_REG02 . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
8.5.4 RF_REG03 . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
8.5.5 RF_REG04 . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
8.5.6 RF_REG05 . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
8.5.7 RF_CENTER_FREQ . . . . . . . . . . . . . . . . . . . . . . . . 166
8.5.8 RF_REG07 . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
8.5.9 RF_REG08 . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
8.5.10 RF_REG09 . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
8.5.11 RF_REG0A . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
8.5.12 RF_SYNC_PATTERN. . . . . . . . . . . . . . . . . . . . . . . . 170
8.5.13 RF_REG0C . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
8.5.14 RF_CRC_POLYNOMIAL . . . . . . . . . . . . . . . . . . . . . . 171
8.5.15 RF_CRC_RST . . . . . . . . . . . . . . . . . . . . . . . . . . 171
8.5.16 RF_REG0F . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
8.5.17 RF_REG10 . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
8.5.18 RF_TX_PULSE0 . . . . . . . . . . . . . . . . . . . . . . . . . 173
8.5.19 RF_TX_PULSE1 . . . . . . . . . . . . . . . . . . . . . . . . . 173

ON Semiconductor
www.onsemi.com
9
8.5.20 RF_TX_PULSE2 . . . . . . . . . . . . . . . . . . . . . . . . . 174
8.5.21 RF_TX_PULSE3 . . . . . . . . . . . . . . . . . . . . . . . . . 174
8.5.22 RF_RX_PULSE. . . . . . . . . . . . . . . . . . . . . . . . . . 175
8.5.23 RF_REG16 . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
8.5.24 RF_REG17 . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
8.5.25 RF_REG18 . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
8.5.26 RF_REG19 . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
8.5.27 RF_REG1A . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
8.5.28 RF_REG1B . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
8.5.29 RF_AGC_LUT1 . . . . . . . . . . . . . . . . . . . . . . . . . 181
8.5.30 RF_AGC_LUT2 . . . . . . . . . . . . . . . . . . . . . . . . . 181
8.5.31 RF_AGC_LUT3 . . . . . . . . . . . . . . . . . . . . . . . . . 181
8.5.32 RF_AGC_LUT4 . . . . . . . . . . . . . . . . . . . . . . . . . 182
8.5.33 RF_REG20 . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
8.5.34 RF_AGC_ATT1. . . . . . . . . . . . . . . . . . . . . . . . . . 183
8.5.35 RF_REG22 . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
8.5.36 RF_REG23 . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
8.5.37 RF_REG24 . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
8.5.38 RF_REG25 . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
8.5.39 RF_REG26 . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
8.5.40 RF_REG27 . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
8.5.41 RF_REG28 . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
8.5.42 RF_PLL_CTRL . . . . . . . . . . . . . . . . . . . . . . . . . . 189
8.5.43 RF_REG2A . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
8.5.44 RF_XTAL_CTRL . . . . . . . . . . . . . . . . . . . . . . . . . 191
8.5.45 RF_REG2C . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
8.5.46 RF_REG2D . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
8.5.47 RF_REG2E . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
8.5.48 RF_REG2F . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
8.5.49 RF_REG30 . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
8.5.50 RF_REG31 . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
8.5.51 RF_REG32 . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
8.5.52 RF_TXFIFO . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
8.5.53 RF_RXFIFO . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
8.5.54 RF_DESER_STATUS . . . . . . . . . . . . . . . . . . . . . . . . 199
8.5.55 RF_IRQ_STATUS . . . . . . . . . . . . . . . . . . . . . . . . . 200
8.5.56 RF_REG37 . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
8.5.57 RF_REG38 . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
8.5.58 RF_REG39 . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
8.5.59 RF_REVISION . . . . . . . . . . . . . . . . . . . . . . . . . . 201
9. Bluetooth Low Energy Baseband . . . . . . . . . . . . . . . . . . . . . . . . . 203
9.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203

RSL10 Hardware Reference
www.onsemi.com
10
9.1.1 Bluetooth Baseband Error Handling . . . . . . . . . . . . . . . . . . . . 204
9.1.2 Support Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . 206
9.2 Baseband Registers and Memory Usage . . . . . . . . . . . . . . . . . . . . 206
9.2.1 Baseband Abstraction Layer Primitives . . . . . . . . . . . . . . . . . . . 207
9.2.2 Control Structures . . . . . . . . . . . . . . . . . . . . . . . . . 207
9.3 Baseband Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
9.3.1 Clock Structures . . . . . . . . . . . . . . . . . . . . . . . . . . 208
9.3.1.1 ACS_BB_TIMER_CTRL . . . . . . . . . . . . . . . . . . . . . 209
9.3.2 Slot Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
9.3.3 Timing and Event-Related Interrupts . . . . . . . . . . . . . . . . . . . 210
9.3.3.1 Schedule Interrupt . . . . . . . . . . . . . . . . . . . . . . . 210
9.3.3.2 End of Event Interrupt . . . . . . . . . . . . . . . . . . . . . . 212
9.3.3.3 Reception Interrupt . . . . . . . . . . . . . . . . . . . . . . . 212
9.3.3.4 Wakeup Interrupt . . . . . . . . . . . . . . . . . . . . . . . . 213
9.3.3.5 Software Interrupt . . . . . . . . . . . . . . . . . . . . . . . 214
9.3.3.6 Encryption Interrupt . . . . . . . . . . . . . . . . . . . . . . . 214
9.4 Baseband Registers . . . . . . . . . . . . . . . . . . . . . . . . . . 214
9.4.1 BBIF_CTRL . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
9.4.2 BBIF_STATUS . . . . . . . . . . . . . . . . . . . . . . . . . . 217
9.4.3 BBIF_COEX_CTRL . . . . . . . . . . . . . . . . . . . . . . . . 218
9.4.4 BBIF_COEX_STATUS . . . . . . . . . . . . . . . . . . . . . . . . 219
9.4.5 BBIF_COEX_INT_CFG . . . . . . . . . . . . . . . . . . . . . . . 219
9.4.6 BBIF_COEX_INT_STATUS . . . . . . . . . . . . . . . . . . . . . . 220
9.4.7 BBIF_SYNC_CFG . . . . . . . . . . . . . . . . . . . . . . . . . 220
9.4.8 BB_RWBBCNTL . . . . . . . . . . . . . . . . . . . . . . . . . 221
9.4.9 BB_VERSION . . . . . . . . . . . . . . . . . . . . . . . . . . 223
9.4.10 BB_RWBLEBCONF . . . . . . . . . . . . . . . . . . . . . . . . 223
9.4.11 BB_INTCNTL . . . . . . . . . . . . . . . . . . . . . . . . . . 224
9.4.12 BB_INTSTAT . . . . . . . . . . . . . . . . . . . . . . . . . . 226
9.4.13 BB_INTRAWSTAT . . . . . . . . . . . . . . . . . . . . . . . . 227
9.4.14 BB_INTACK . . . . . . . . . . . . . . . . . . . . . . . . . . 228
9.4.15 BB_BASETIMECNT . . . . . . . . . . . . . . . . . . . . . . . . 230
9.4.16 BB_FINETIMECNT . . . . . . . . . . . . . . . . . . . . . . . . 230
9.4.17 BB_BDADDRL. . . . . . . . . . . . . . . . . . . . . . . . . . 230
9.4.18 BB_BDADDRU . . . . . . . . . . . . . . . . . . . . . . . . . 231
9.4.19 BB_ET_CURRENTRXDESCPTR . . . . . . . . . . . . . . . . . . . . 231
9.4.20 BB_DEEPSLCNTL . . . . . . . . . . . . . . . . . . . . . . . . 231
9.4.21 BB_DEEPSLWKUP . . . . . . . . . . . . . . . . . . . . . . . . 232
9.4.22 BB_DEEPSLSTAT . . . . . . . . . . . . . . . . . . . . . . . . . 232
9.4.23 BB_ENBPRESET . . . . . . . . . . . . . . . . . . . . . . . . . 233
9.4.24 BB_FINECNTCORR . . . . . . . . . . . . . . . . . . . . . . . . 233
9.4.25 BB_BASETIMECNTCORR . . . . . . . . . . . . . . . . . . . . . . 233
9.4.26 BB_DIAGCNTL . . . . . . . . . . . . . . . . . . . . . . . . . 233

ON Semiconductor
www.onsemi.com
11
9.4.27 BB_DIAGSTAT. . . . . . . . . . . . . . . . . . . . . . . . . . 234
9.4.28 BB_DEBUGADDMAX . . . . . . . . . . . . . . . . . . . . . . . 234
9.4.29 BB_DEBUGADDMIN . . . . . . . . . . . . . . . . . . . . . . . 235
9.4.30 BB_ERRORTYPESTAT . . . . . . . . . . . . . . . . . . . . . . . 235
9.4.31 BB_SWPROFILING . . . . . . . . . . . . . . . . . . . . . . . . 237
9.4.32 BB_RADIOCNTL0 . . . . . . . . . . . . . . . . . . . . . . . . 237
9.4.33 BB_RADIOCNTL1 . . . . . . . . . . . . . . . . . . . . . . . . 238
9.4.34 BB_RADIOCNTL2 . . . . . . . . . . . . . . . . . . . . . . . . 239
9.4.35 BB_RADIOPWRUPDN0. . . . . . . . . . . . . . . . . . . . . . . 239
9.4.36 BB_RADIOPWRUPDN1. . . . . . . . . . . . . . . . . . . . . . . 239
9.4.37 BB_RADIOTXRXTIM0 . . . . . . . . . . . . . . . . . . . . . . . 240
9.4.38 BB_RADIOTXRXTIM1 . . . . . . . . . . . . . . . . . . . . . . . 240
9.4.39 BB_SPIPTRCNTL0 . . . . . . . . . . . . . . . . . . . . . . . . 240
9.4.40 BB_SPIPTRCNTL1 . . . . . . . . . . . . . . . . . . . . . . . . 241
9.4.41 BB_SPIPTRCNTL2 . . . . . . . . . . . . . . . . . . . . . . . . 241
9.4.42 BB_ADVCHMAP . . . . . . . . . . . . . . . . . . . . . . . . . 241
9.4.43 BB_ADVTIM . . . . . . . . . . . . . . . . . . . . . . . . . . 241
9.4.44 BB_ACTSCANSTAT . . . . . . . . . . . . . . . . . . . . . . . . 242
9.4.45 BB_WLPUBADDPTR . . . . . . . . . . . . . . . . . . . . . . . 242
9.4.46 BB_WLPRIVADDPTR . . . . . . . . . . . . . . . . . . . . . . . 242
9.4.47 BB_WLNBDEV . . . . . . . . . . . . . . . . . . . . . . . . . 242
9.4.48 BB_AESCNTL . . . . . . . . . . . . . . . . . . . . . . . . . . 243
9.4.49 BB_AESKEY31_0 . . . . . . . . . . . . . . . . . . . . . . . . . 243
9.4.50 BB_AESKEY63_32 . . . . . . . . . . . . . . . . . . . . . . . . 243
9.4.51 BB_AESKEY95_64 . . . . . . . . . . . . . . . . . . . . . . . . 243
9.4.52 BB_AESKEY127_96 . . . . . . . . . . . . . . . . . . . . . . . . 244
9.4.53 BB_AESPTR . . . . . . . . . . . . . . . . . . . . . . . . . . 244
9.4.54 BB_TXMICVAL . . . . . . . . . . . . . . . . . . . . . . . . . 244
9.4.55 BB_RXMICVAL . . . . . . . . . . . . . . . . . . . . . . . . . 244
9.4.56 BB_RFTESTCNTL . . . . . . . . . . . . . . . . . . . . . . . . 244
9.4.57 BB_RFTESTTXSTAT. . . . . . . . . . . . . . . . . . . . . . . . 245
9.4.58 BB_RFTESTRXSTAT. . . . . . . . . . . . . . . . . . . . . . . . 246
9.4.59 BB_TIMGENCNTL . . . . . . . . . . . . . . . . . . . . . . . . 246
9.4.60 BB_GROSSTIMTGT . . . . . . . . . . . . . . . . . . . . . . . . 246
9.4.61 BB_FINETIMTGT. . . . . . . . . . . . . . . . . . . . . . . . . 246
9.4.62 BB_COEXIFCNTL0 . . . . . . . . . . . . . . . . . . . . . . . . 247
9.4.63 BB_COEXIFCNTL1 . . . . . . . . . . . . . . . . . . . . . . . . 249
9.4.64 BB_COEXIFCNTL2 . . . . . . . . . . . . . . . . . . . . . . . . 250
9.4.65 BB_BBMPRIO0 . . . . . . . . . . . . . . . . . . . . . . . . . 250
9.4.66 BB_BBMPRIO1 . . . . . . . . . . . . . . . . . . . . . . . . . 251
9.4.67 BB_RALPTR . . . . . . . . . . . . . . . . . . . . . . . . . . 251
9.4.68 BB_RALNBDEV . . . . . . . . . . . . . . . . . . . . . . . . . 251

RSL10 Hardware Reference
www.onsemi.com
12
9.4.69 BB_RAL_LOCAL_RND . . . . . . . . . . . . . . . . . . . . . . . 252
9.4.70 BB_RAL_PEER_RND . . . . . . . . . . . . . . . . . . . . . . . 252
9.4.71 BB_ISOCHANCNTL0 . . . . . . . . . . . . . . . . . . . . . . . 252
9.4.72 BB_ISOMUTECNTL0 . . . . . . . . . . . . . . . . . . . . . . . 253
9.4.73 BB_ISOCURRENTTXPTR0 . . . . . . . . . . . . . . . . . . . . . 253
9.4.74 BB_ISOCURRENTRXPTR0 . . . . . . . . . . . . . . . . . . . . . 254
9.4.75 BB_ISOTRCNL0 . . . . . . . . . . . . . . . . . . . . . . . . . 254
9.4.76 BB_ISOEVTCNTLOFFSETL0 . . . . . . . . . . . . . . . . . . . . . 254
9.4.77 BB_ISOEVTCNTLOFFSETU0. . . . . . . . . . . . . . . . . . . . . 254
9.4.78 BB_ISOCHANCNTL1 . . . . . . . . . . . . . . . . . . . . . . . 255
9.4.79 BB_ISOMUTECNTL1 . . . . . . . . . . . . . . . . . . . . . . . 255
9.4.80 BB_ISOCURRENTTXPTR1 . . . . . . . . . . . . . . . . . . . . . 256
9.4.81 BB_ISOCURRENTRXPTR1 . . . . . . . . . . . . . . . . . . . . . 256
9.4.82 BB_ISOTRCNL1 . . . . . . . . . . . . . . . . . . . . . . . . . 257
9.4.83 BB_ISOEVTCNTLOFFSETL1 . . . . . . . . . . . . . . . . . . . . . 257
9.4.84 BB_ISOEVTCNTLOFFSETU1. . . . . . . . . . . . . . . . . . . . . 257
9.4.85 BB_ISOCHANCNTL2 . . . . . . . . . . . . . . . . . . . . . . . 257
9.4.86 BB_ISOMUTECNTL2 . . . . . . . . . . . . . . . . . . . . . . . 258
9.4.87 BB_ISOCURRENTTXPTR2 . . . . . . . . . . . . . . . . . . . . . 259
9.4.88 BB_ISOCURRENTRXPTR2 . . . . . . . . . . . . . . . . . . . . . 259
9.4.89 BB_ISOTRCNL2 . . . . . . . . . . . . . . . . . . . . . . . . . 259
9.4.90 BB_ISOEVTCNTLOFFSETL2 . . . . . . . . . . . . . . . . . . . . . 259
9.4.91 BB_ISOEVTCNTLOFFSETU2. . . . . . . . . . . . . . . . . . . . . 260
9.4.92 BB_BBPRIOSCHARB . . . . . . . . . . . . . . . . . . . . . . . 260
10. Digital Input/Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
10.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
10.2 Functional Configuration . . . . . . . . . . . . . . . . . . . . . . . . 261
10.2.1 Special Functional Configurations . . . . . . . . . . . . . . . . . . . . 264
10.3 Physical Configuration . . . . . . . . . . . . . . . . . . . . . . . . . 265
10.4 DIO Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
10.4.1 DIO_CFG . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
10.4.2 DIO_DATA . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
10.4.3 DIO_DIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
10.4.4 DIO_MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
10.4.5 DIO_INT_CFG . . . . . . . . . . . . . . . . . . . . . . . . . . 276
10.4.6 DIO_INT_DEBOUNCE . . . . . . . . . . . . . . . . . . . . . . . 277
10.4.7 DIO_PCM_SRC . . . . . . . . . . . . . . . . . . . . . . . . . 278
10.4.8 DIO_SPI_SRC . . . . . . . . . . . . . . . . . . . . . . . . . . 280
10.4.9 DIO_UART_SRC . . . . . . . . . . . . . . . . . . . . . . . . . 282
10.4.10 DIO_I2C_SRC. . . . . . . . . . . . . . . . . . . . . . . . . . 282
10.4.11 DIO_AUDIOSINK_SRC . . . . . . . . . . . . . . . . . . . . . . 284
10.4.12 DIO_NMI_SRC . . . . . . . . . . . . . . . . . . . . . . . . . 284
10.4.13 DIO_BB_RX_SRC . . . . . . . . . . . . . . . . . . . . . . . . 285

ON Semiconductor
www.onsemi.com
13
10.4.14 DIO_BB_SPI_SRC . . . . . . . . . . . . . . . . . . . . . . . . 288
10.4.15 DIO_RF_SPI_SRC . . . . . . . . . . . . . . . . . . . . . . . . 289
10.4.16 DIO_RF_GPIO03_SRC . . . . . . . . . . . . . . . . . . . . . . . 292
10.4.17 DIO_RF_GPIO47_SRC . . . . . . . . . . . . . . . . . . . . . . . 295
10.4.18 DIO_RF_GPIO89_SRC . . . . . . . . . . . . . . . . . . . . . . . 298
10.4.19 DIO_DMIC_SRC . . . . . . . . . . . . . . . . . . . . . . . . . 299
10.4.20 DIO_LPDSP32_JTAG_SRC . . . . . . . . . . . . . . . . . . . . . 301
10.4.21 DIO_JTAG_SW_PAD_CFG . . . . . . . . . . . . . . . . . . . . . 303
10.4.22 DIO_EXTCLK_CFG. . . . . . . . . . . . . . . . . . . . . . . . 303
10.4.23 DIO_PAD_CFG . . . . . . . . . . . . . . . . . . . . . . . . . 304
11. Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
11.1 Analog-to-Digital Converters (ADCs) . . . . . . . . . . . . . . . . . . . . 305
11.1.1 ADC Input Configuration . . . . . . . . . . . . . . . . . . . . . . . 305
11.1.2 ADC Sampling Configuration . . . . . . . . . . . . . . . . . . . . . 305
11.1.3 ADC Output Data . . . . . . . . . . . . . . . . . . . . . . . . . 307
11.1.4 Power Supply Monitoring. . . . . . . . . . . . . . . . . . . . . . . 307
11.1.5 ADC and Power Supply Monitoring Interrupt . . . . . . . . . . . . . . . . 308
11.1.6 ADC Registers . . . . . . . . . . . . . . . . . . . . . . . . . . 308
11.1.6.1 ADC_DATA_TRIM_CH . . . . . . . . . . . . . . . . . . . . . 308
11.1.6.2 ADC_DATA_AUDIO_CH . . . . . . . . . . . . . . . . . . . . 308
11.1.6.3 ADC_INPUT_SEL. . . . . . . . . . . . . . . . . . . . . . . 309
11.1.6.4 ADC_CFG . . . . . . . . . . . . . . . . . . . . . . . . . 309
11.1.6.5 ADC_OFFSET . . . . . . . . . . . . . . . . . . . . . . . . 310
11.1.6.6 ADC_BATMON_CFG . . . . . . . . . . . . . . . . . . . . . 310
11.1.6.7 ADC_BATMON_INT_ENABLE . . . . . . . . . . . . . . . . . . 311
11.1.6.8 ADC_BATMON_COUNT_VAL . . . . . . . . . . . . . . . . . . 312
11.1.6.9 ADC_BATMON_STATUS . . . . . . . . . . . . . . . . . . . . 312
11.2 General-Purpose I/O (GPIO) Interface . . . . . . . . . . . . . . . . . . . . 312
11.2.1 GPIO Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . 313
11.3 I2C Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
11.3.1 Slave Mode Specific Configuration. . . . . . . . . . . . . . . . . . . . 317
11.3.2 Master Mode Specific Configuration . . . . . . . . . . . . . . . . . . . 318
11.3.3 I2C Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . 319
11.3.3.1 Operation Using Manual Acknowledgement . . . . . . . . . . . . . . . 319
11.3.3.2 Operation Using Auto Acknowledgement . . . . . . . . . . . . . . . 320
11.3.4 I2C Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . 320
11.3.4.1 I2C_CTRL0 . . . . . . . . . . . . . . . . . . . . . . . . . 320
11.3.4.2 I2C_CTRL1 . . . . . . . . . . . . . . . . . . . . . . . . . 322
11.3.4.3 I2C_DATA . . . . . . . . . . . . . . . . . . . . . . . . . 322
11.3.4.4 I2C_DATA_M . . . . . . . . . . . . . . . . . . . . . . . . 322
11.3.4.5 I2C_ADDR_START . . . . . . . . . . . . . . . . . . . . . . 323
11.3.4.6 I2C_STATUS . . . . . . . . . . . . . . . . . . . . . . . . 323
11.4 Pulse Code Modulation (PCM) Interface . . . . . . . . . . . . . . . . . . . 325
11.4.1 PCM Signal Configuration . . . . . . . . . . . . . . . . . . . . . . 326

RSL10 Hardware Reference
www.onsemi.com
14
11.4.1.1 Frame Signal Configuration and Timing . . . . . . . . . . . . . . . . 326
11.4.1.2 Data Serial Input and Output Configuration . . . . . . . . . . . . . . . 329
11.4.2 PCM Interrupt Configuration. . . . . . . . . . . . . . . . . . . . . . 329
11.4.3 I2S Configuration and Usage. . . . . . . . . . . . . . . . . . . . . . 329
11.4.4 PCM Registers . . . . . . . . . . . . . . . . . . . . . . . . . . 332
11.4.4.1 PCM_CTRL . . . . . . . . . . . . . . . . . . . . . . . . . 332
11.4.4.2 PCM_TX_DATA . . . . . . . . . . . . . . . . . . . . . . . 333
11.4.4.3 PCM_RX_DATA . . . . . . . . . . . . . . . . . . . . . . . 333
11.4.4.4 PCM_STATUS . . . . . . . . . . . . . . . . . . . . . . . . 333
11.5 Pulse Width Modulation (PWM) . . . . . . . . . . . . . . . . . . . . . . 334
11.5.1 PWM Registers . . . . . . . . . . . . . . . . . . . . . . . . . . 335
11.5.1.1 PWM_CFG . . . . . . . . . . . . . . . . . . . . . . . . . 335
11.5.1.2 PWM_CTRL . . . . . . . . . . . . . . . . . . . . . . . . 336
11.6 Serial Peripheral Interfaces (SPI) . . . . . . . . . . . . . . . . . . . . . 336
11.6.1 SPI Data Transfers . . . . . . . . . . . . . . . . . . . . . . . . . 336
11.6.2 SPI Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . 338
11.6.3 SPI DMA Control . . . . . . . . . . . . . . . . . . . . . . . . . 339
11.6.4 SPI Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . 339
11.6.4.1 SPI0_CTRL0 . . . . . . . . . . . . . . . . . . . . . . . . 339
11.6.4.2 SPI0_CTRL1 . . . . . . . . . . . . . . . . . . . . . . . . 341
11.6.4.3 SPI0_TX_DATA . . . . . . . . . . . . . . . . . . . . . . . 342
11.6.4.4 SPI0_RX_DATA . . . . . . . . . . . . . . . . . . . . . . . 342
11.6.4.5 SPI0_STATUS . . . . . . . . . . . . . . . . . . . . . . . . 342
11.6.4.6 SPI1_CTRL0 . . . . . . . . . . . . . . . . . . . . . . . . 343
11.6.4.7 SPI1_CTRL1 . . . . . . . . . . . . . . . . . . . . . . . . 344
11.6.4.8 SPI1_TX_DATA . . . . . . . . . . . . . . . . . . . . . . . 345
11.6.4.9 SPI1_RX_DATA . . . . . . . . . . . . . . . . . . . . . . . 345
11.6.4.10 SPI1_STATUS . . . . . . . . . . . . . . . . . . . . . . . . 345
11.7 Universal Asynchronous Receiver-Transmitter (UART) Interfaces . . . . . . . . . . . 345
11.7.1 UART Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . 347
11.7.2 UART Interface Registers. . . . . . . . . . . . . . . . . . . . . . . 347
11.7.2.1 UART_CFG . . . . . . . . . . . . . . . . . . . . . . . . . 347
11.7.2.2 UART_TX_DATA . . . . . . . . . . . . . . . . . . . . . . . 348
11.7.2.3 UART_RX_DATA . . . . . . . . . . . . . . . . . . . . . . . 348
11.7.2.4 UART_STATUS . . . . . . . . . . . . . . . . . . . . . . . 348
11.8 Support Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . 348
12. Peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
12.1 Cyclic Redundancy Check (CRC) Generator . . . . . . . . . . . . . . . . . . 351
12.1.1 CRC Registers . . . . . . . . . . . . . . . . . . . . . . . . . . 352
12.1.1.1 CRC_CTRL . . . . . . . . . . . . . . . . . . . . . . . . . 352
12.1.1.2 CRC_VALUE . . . . . . . . . . . . . . . . . . . . . . . . 353
12.1.1.3 CRC_ADD_1 . . . . . . . . . . . . . . . . . . . . . . . . 353
12.1.1.4 CRC_ADD_8 . . . . . . . . . . . . . . . . . . . . . . . . 353
12.1.1.5 CRC_ADD_16 . . . . . . . . . . . . . . . . . . . . . . . . 354
12.1.1.6 CRC_ADD_24 . . . . . . . . . . . . . . . . . . . . . . . . 354

ON Semiconductor
www.onsemi.com
15
12.1.1.7 CRC_ADD_32 . . . . . . . . . . . . . . . . . . . . . . . . 354
12.1.1.8 CRC_FINAL . . . . . . . . . . . . . . . . . . . . . . . . 354
12.2 Direct Memory Access (DMA) Controller . . . . . . . . . . . . . . . . . . 354
12.2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
12.2.2 DMA Channel Configuration . . . . . . . . . . . . . . . . . . . . . 355
12.2.3 Word Size, Data Packing and Transfer Length . . . . . . . . . . . . . . . . 357
12.2.3.1 Word Size . . . . . . . . . . . . . . . . . . . . . . . . . 357
12.2.3.2 Data Packing . . . . . . . . . . . . . . . . . . . . . . . . 357
12.2.3.3 Transfer Length . . . . . . . . . . . . . . . . . . . . . . . . 360
12.2.4 DMA Transfer Types . . . . . . . . . . . . . . . . . . . . . . . . 360
12.2.4.1 Memory-to-Memory (MM) . . . . . . . . . . . . . . . . . . . . 362
12.2.4.2 Memory-to-Peripheral. . . . . . . . . . . . . . . . . . . . . . 362
12.2.4.3 Peripheral-to-Memory (PM) . . . . . . . . . . . . . . . . . . . . 363
12.2.4.4 Peripheral-to-Peripheral (PP) . . . . . . . . . . . . . . . . . . . 363
12.2.5 DMA Interrupt Configuration . . . . . . . . . . . . . . . . . . . . . 364
12.2.6 Channel Priority. . . . . . . . . . . . . . . . . . . . . . . . . . 365
12.2.7 Data Memory Usage by the DMA and ARM Cortex-M3 Processor. . . . . . . . . . 365
12.2.8 DMA Registers . . . . . . . . . . . . . . . . . . . . . . . . . . 366
12.2.8.1 DMA_CTRL0 . . . . . . . . . . . . . . . . . . . . . . . . 368
12.2.8.2 DMA_SRC_BASE_ADDR . . . . . . . . . . . . . . . . . . . . 371
12.2.8.3 DMA_DEST_BASE_ADDR . . . . . . . . . . . . . . . . . . . 371
12.2.8.4 DMA_CTRL1 . . . . . . . . . . . . . . . . . . . . . . . . 371
12.2.8.5 DMA_NEXT_SRC_ADDR . . . . . . . . . . . . . . . . . . . . 372
12.2.8.6 DMA_NEXT_DEST_ADDR . . . . . . . . . . . . . . . . . . . 372
12.2.8.7 DMA_WORD_CNT . . . . . . . . . . . . . . . . . . . . . . 372
12.2.8.8 DMA_STATUS . . . . . . . . . . . . . . . . . . . . . . . . 372
12.3 Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
12.3.1 Starting or Stopping Timers . . . . . . . . . . . . . . . . . . . . . . 374
12.3.2 Mode Selection . . . . . . . . . . . . . . . . . . . . . . . . . . 374
12.3.3 Timer Registers . . . . . . . . . . . . . . . . . . . . . . . . . . 374
12.3.3.1 TIMER_CFG . . . . . . . . . . . . . . . . . . . . . . . . 375
12.3.3.2 TIMER_CTRL . . . . . . . . . . . . . . . . . . . . . . . . 376
12.3.3.3 TIMER_VAL . . . . . . . . . . . . . . . . . . . . . . . . 376
12.4 Watchdog Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
12.4.1 Watchdog Registers . . . . . . . . . . . . . . . . . . . . . . . . 377
12.4.1.1 WATCHDOG_CFG . . . . . . . . . . . . . . . . . . . . . . 377
12.4.1.2 WATCHDOG_CTRL . . . . . . . . . . . . . . . . . . . . . . 378
13. Audio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
13.1 Digital Microphone (DMIC) Inputs . . . . . . . . . . . . . . . . . . . . . 379
13.1.1 Digital Microphone and Shared Digital Microphone/Output Driver Registers . . . . . . 381
13.1.1.1 AUDIO_CFG . . . . . . . . . . . . . . . . . . . . . . . . 381
13.1.1.2 AUDIO_STATUS . . . . . . . . . . . . . . . . . . . . . . . 383
13.1.1.3 AUDIO_DMIC_CFG . . . . . . . . . . . . . . . . . . . . . . 384
13.1.1.4 AUDIO_DMIC0_GAIN . . . . . . . . . . . . . . . . . . . . . 386
13.1.1.5 AUDIO_DMIC1_GAIN . . . . . . . . . . . . . . . . . . . . . 386

RSL10 Hardware Reference
www.onsemi.com
16
13.1.1.6 AUDIO_DMIC_DATA . . . . . . . . . . . . . . . . . . . . . 387
13.1.1.7 AUDIO_DMIC0_DATA . . . . . . . . . . . . . . . . . . . . . 387
13.1.1.8 AUDIO_DMIC1_DATA . . . . . . . . . . . . . . . . . . . . . 387
13.2 Output Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
13.2.1 Output Driver Registers . . . . . . . . . . . . . . . . . . . . . . . 389
13.2.1.1 AUDIO_OD_CFG . . . . . . . . . . . . . . . . . . . . . . . 389
13.2.1.2 AUDIO_OD_GAIN . . . . . . . . . . . . . . . . . . . . . . 390
13.2.1.3 AUDIO_OD_DATA . . . . . . . . . . . . . . . . . . . . . . 391
13.2.1.4 AUDIO_SDM_CFG . . . . . . . . . . . . . . . . . . . . . . 391
13.3 Audio Sink Clock Counters . . . . . . . . . . . . . . . . . . . . . . . 391
13.3.1 Audio Sink Registers . . . . . . . . . . . . . . . . . . . . . . . . 393
13.3.1.1 AUDIOSINK_CTRL . . . . . . . . . . . . . . . . . . . . . . 393
13.3.1.2 AUDIOSINK_CFG . . . . . . . . . . . . . . . . . . . . . . 395
13.3.1.3 AUDIOSINK_CNT . . . . . . . . . . . . . . . . . . . . . . 395
13.3.1.4 AUDIOSINK_PHASE_CNT . . . . . . . . . . . . . . . . . . . 395
13.3.1.5 AUDIOSINK_PERIOD_CNT . . . . . . . . . . . . . . . . . . . 395
13.4 Asynchronous Sample Rate Converter (ASRC) . . . . . . . . . . . . . . . . . 395
13.4.1 ASRC Registers. . . . . . . . . . . . . . . . . . . . . . . . . . 397
13.4.1.1 ASRC_CTRL . . . . . . . . . . . . . . . . . . . . . . . . 397
13.4.1.2 ASRC_INT_ENABLE . . . . . . . . . . . . . . . . . . . . . 398
13.4.1.3 ASRC_OUT . . . . . . . . . . . . . . . . . . . . . . . . . 399
13.4.1.4 ASRC_IN . . . . . . . . . . . . . . . . . . . . . . . . . 399
13.4.1.5 ASRC_CFG . . . . . . . . . . . . . . . . . . . . . . . . . 399
13.4.1.6 ASRC_OUTPUT_CNT . . . . . . . . . . . . . . . . . . . . . 399
13.4.1.7 ASRC_PHASE_INC . . . . . . . . . . . . . . . . . . . . . . 400
13.4.1.8 ASRC_PHASE_CNT . . . . . . . . . . . . . . . . . . . . . . 400
13.4.1.9 ASRC_STATE_MEM . . . . . . . . . . . . . . . . . . . . . . 400
14. Private Peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
14.1 Nested Vectored Interrupt Controller (NVIC) . . . . . . . . . . . . . . . . . . 401
14.1.1 Interrupt Controller Type Register . . . . . . . . . . . . . . . . . . . . 405
14.1.2 Interrupt Set Enable and Clear Enable Registers. . . . . . . . . . . . . . . . 405
14.1.3 Interrupt Set-Pending Registers and Interrupt Clear-Pending Registers . . . . . . . . 406
14.1.4 Active Bit Register . . . . . . . . . . . . . . . . . . . . . . . . . 407
14.1.5 Interrupt Priority Registers . . . . . . . . . . . . . . . . . . . . . . 407
14.1.6 Registers Described by ARM Documentation . . . . . . . . . . . . . . . . 409
14.2 SysTick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
14.2.1 SysTick Control and Configuration Registers . . . . . . . . . . . . . . . . 410
14.2.1.1 SysTick_CTRL . . . . . . . . . . . . . . . . . . . . . . . . 410
14.2.1.2 SysTick_LOAD. . . . . . . . . . . . . . . . . . . . . . . . 410
14.2.1.3 SysTick_VAL . . . . . . . . . . . . . . . . . . . . . . . . 410
14.2.1.4 SysTick_CALIB . . . . . . . . . . . . . . . . . . . . . . . 411
14.3 Debug Controller . . . . . . . . . . . . . . . . . . . . . . . . . . 411
14.3.1 Halting Debug Configuration and Status . . . . . . . . . . . . . . . . . . 411
14.3.2 Debug Monitor Configuration . . . . . . . . . . . . . . . . . . . . . 412
14.3.3 ARM Cortex-M3 Processor Core Register Access . . . . . . . . . . . . . . . 412

ON Semiconductor
www.onsemi.com
17
14.3.4 Debug Fault Status Register . . . . . . . . . . . . . . . . . . . . . . 413
14.3.5 ARM Cortex-M3 Processor Debug Port Specific Control and Configuration Registers . . . 413
14.3.5.1 SCB_DFSR Settings . . . . . . . . . . . . . . . . . . . . . . 414
14.3.5.2 CoreDebug_DHCSR Settings . . . . . . . . . . . . . . . . . . . 414
14.3.5.3 CoreDebug_DCRSR Settings . . . . . . . . . . . . . . . . . . . 414
14.3.5.4 Debug Exception and Monitor Control Register. . . . . . . . . . . . . . 415
A. Control and Configuration Registers . . . . . . . . . . . . . . . . . . . . . . . 416
A.1 Chip Identification . . . . . . . . . . . . . . . . . . . . . . . . . . 417
A.2 System Control . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
A.3 Clock Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
A.4 Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
A.5 Watchdog Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
A.6 General-Purpose Timers 0, 1, 2 and 3 . . . . . . . . . . . . . . . . . . . . 426
A.7 Flash Interface Configuration and Control . . . . . . . . . . . . . . . . . . . 427
A.8 DMA Controller Configuration and Control . . . . . . . . . . . . . . . . . . 430
A.9 DIO Interface and Digital Pad control . . . . . . . . . . . . . . . . . . . . 432
A.10 SPI Interface Configuration and Control . . . . . . . . . . . . . . . . . . . 434
A.11 SPI Interface Configuration and Control . . . . . . . . . . . . . . . . . . . 435
A.12 PCM Interface Configuration and Control . . . . . . . . . . . . . . . . . . 436
A.13 I2C Interface Configuration and Control . . . . . . . . . . . . . . . . . . . 437
A.14 UART Interface Configuration and Control . . . . . . . . . . . . . . . . . . 439
A.15 PWM 0 and 1 Configuration and Control . . . . . . . . . . . . . . . . . . . 440
A.16 DMIC Input and Output Driver Configuration and Control . . . . . . . . . . . . . 441
A.17 CRC Generator Control . . . . . . . . . . . . . . . . . . . . . . . . 444
A.18 Audio Sink Clock Counters . . . . . . . . . . . . . . . . . . . . . . . 445
A.19 ASRC Configuration and Control . . . . . . . . . . . . . . . . . . . . . 446
A.20 Analog-to-Digital Converter and Battery Monitoring . . . . . . . . . . . . . . . 447
A.21 ACS domain (Analog Bridge Access) . . . . . . . . . . . . . . . . . . . . 448
A.22 Baseband Controller Interface . . . . . . . . . . . . . . . . . . . . . . 453
A.23 Baseband Controller . . . . . . . . . . . . . . . . . . . . . . . . . 455
A.24 RF Front-End 2.4 GHz . . . . . . . . . . . . . . . . . . . . . . . . 468
A.25 SYSTICK Timer . . . . . . . . . . . . . . . . . . . . . . . . . . 495
A.26 System Control and ID register not in the SCB . . . . . . . . . . . . . . . . . 496
A.27 Nested Vector Interrupt Controller . . . . . . . . . . . . . . . . . . . . . 497
A.28 System Control Block . . . . . . . . . . . . . . . . . . . . . . . . . 514
A.29 Debug Controller . . . . . . . . . . . . . . . . . . . . . . . . . . 517
B. Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519

www.onsemi.com
18
CHAPTER 1
1.Introduction
1.1 PURPOSE
This manual provides a reference to the system hardware for application developers working with RSL10. This
manual describes all of the components belonging to the RSL10 System-on-Chip (SoC), including:
• Bluetooth® and generic RF support
• Data processing and control components
• Power supply and clocking components
• Memory components
• Peripherals
• External interfaces
The data processing and control component information provided by this manual complements the
ARM®Cortex®-M3 core description in the The Definitive Guide to the ARM Cortex-M3 and other third-party
documentation for the ARM Cortex-M3 processor.
The RSL10 Hardware Reference further describes how each component of the RSL10 SoC can be used in the
implementation of an application, and provides information about the configuration of the various system
components. This manual is a part of the RSL10 Evaluation and Development Kit (RSL10 EDK).
1.2 INTENDED AUDIENCE
This manual is primarily intended for engineers and other individuals who are responsible for developing and/or
maintaining Bluetooth and other RF-based communication applications that make use of an RSL10 SoC. People who
are developing local interfaces between an external device and RSL10, as well as those interested in the details of the
audio, power supply and clocking components, will find this manual particularly helpful as it focuses on the
configuration and use of system components.
This manual assumes that readers are familiar with C-level programming, RF application concepts, and
Bluetooth low energy technology.
1.3 CONVENTIONS
The following conventions are used in this manual to signify particular types of information:
• Control and configuration registers are shown in a special font.
• Angle brackets “<” and “>” identify an optional parameter or indicate a placeholder for specific information.
To use an optional parameter or replace a placeholder, specify the information within the brackets; do not
include the brackets themselves.
• Default settings for registers and bit fields are marked with an asterisk (*).
• All sample rates specified are the final decimated sample rates, unless stated otherwise.
• In general, numbers are presented in decimal notation. In cases where hexadecimal or binary notation is
more convenient, these numbers are identified by the prefixes “0x” and “0b” respectively. For example, the
decimal number 123456 can also be represented as 0x1E240 or 0b11110001001000000.
1.4 MANUAL ORGANIZATION
The RSL10 Hardware Reference contains the following chapters and appendices:

ON Semiconductor
www.onsemi.com
19
•Chapter 1: Introduction, explains the purpose, intended audience, conventions used and organization of this
manual. It also contains a list of other documents that provide information on other aspects of application
development using the RSL10 SoC.
•Chapter 2: Overview, describes the system architecture, an overview of the hardware components, and how
these components interact. It also describes the device identification register.
•Chapter 3: ARM Cortex-M3 Processor, provides an overview of the general-purpose ARM Cortex-M3
processor, its use in the RSL10 system, and its control and configuration registers.
•Chapter 4: LPDSP32 Processor, provides an overview of the LPDSP32 DSP, its use in the RSL10 system,
and its control and configuration registers.
•Chapter 5: Power, provides descriptions and configuration information for all of the power supply, power
management, and reset-related components.
•Chapter 6: Clocking, provides descriptions and configuration information for all of the clock generation and
clock distribution components.
•Chapter 7: Memory, provides details about the various memory instances, buses and other memory structures
that are associated with the processing core.
•Chapter 8: RF Front-End, provides a description of and configuration for the RF front-end of the RSL10
system, including both the transmit and receive signal paths, and information about the simple baseband
provided with the RF Front-End.
•Chapter 9: Bluetooth Low Energy Baseband, provides a description of and configuration for the Bluetooth
low energy baseband.
•Chapter 10: Digital Input/Output, describes how to configure the DIO pads.
•Chapter 11: Interfaces, provides information about the interfaces available to the ARM Cortex-M3 processor
that can be used to pass data between RSL10 and external components.
•Chapter 12: Peripherals, describes the embedded peripherals that are provided to support system tasks, such
as a direct memory access controller and various timers.
•Chapter 13: Audio, describes the peripheral audio inputs, outputs, and support structures.
•Chapter 14: Private Peripherals, provides information about the interrupt controller, system tick timer, and
debug controller that are provided for the ARM Cortex-M3 processor.
•Appendix A: Control and Configuration Registers, contains a summary table listing all of the hardware
control and configuration registers and their settings.
•Appendix B: Glossary, provides definitions for many of the terms defined and used throughout this document.
1.5 FURTHER READING
For more information, refer to the following documents:
•ARMv7M Architecture Reference Manual
•Bluetooth Core Specification version 5.0, available from https://www.bluetooth.com/specifications/
adopted-specifications
•RSL10 Firmware Reference

www.onsemi.com
20
CHAPTER 2
2.Overview
2.1 SYSTEM ARCHITECTURE
RSL10 is an ultra-low-power, highly flexible multi-protocol 2.4 GHz SoC specifically designed for use in
high−performance wearable and medical applications, or any other applications that can benefit from low-power
wireless connectivity. With its ARM Cortex-M3 Processor and LPDSP32 DSP core, RSL10 supports Bluetooth low
energy technology and any 2.4 GHz proprietary protocol stacks, without sacrificing power consumption.
Figure 1 illustrates a high-level component diagram describing RSL10.
Figure 1. Top Level Component Diagram
RSL10 is based around four key components:
1. The ARM Cortex-M3 Processor: A 32-bit core for real-time applications, specifically developed to enable
high-performance low-cost platforms for a broad range of low-power applications.
This processor provides general-purpose processing that is used to configure and control all of the
components of the RSL10 system including the LPDSP32 DSP, the RF front-end, and the Bluetooth
baseband.
2. LPDSP32 Digital Signal Processor (DSP): A 32-bit Dual Harvard DSP core that efficiently supports audio
codecs required for wireless audio communication. If not used for audio applications, this core can be used
for other signal processing tasks for advanced developments that need additional processing power. To
enable development using the LPDSP32, contact your ON Semiconductor representative.
RF
Radio PHY
Baseband controller
Bluetooth 5.0 (+LE 2M) and custom protocol
Power Management
LPDSP32
32-bit Dual Harvard core
ARM® Cortex®-M3
Processor
Interfaces
Oscillators
Timers
IP Protection
JTAG
SWJ-DP
Bus
Arbiters
DMA
RAMs and
Flash
ADC
Sample Rate Converter
Audio Sink Clock Counters
SPI
(2x) PCM
I2C
UART
ADC (4x)
DMIC
(2x)
PWM
(2x) GPIO
XTAL_32KHz
XTAL_48MHz
Battery
55nm, 5.50 mm
2
OD
Other manuals for RSL10
11
Table of contents
Other ON Semiconductor Control Unit manuals
Popular Control Unit manuals by other brands

Dometic
Dometic CapTouch Installation and operating manual

jbc
jbc DI reference guide

Navien
Navien NaviCirc Series Installation and operation manual

TP-Link
TP-Link TL-SM311 Series installation guide

Dakota Digital
Dakota Digital Odyssey ODY-19-3 manual

opti-solar
opti-solar SC Series Installation and operation manual