advertisement
![SENSOR SUB-SYSTEM REGISTERS. Qwiic QuickLogic Thing Plus - EOS S3 | Manualzz SENSOR SUB-SYSTEM REGISTERS. Qwiic QuickLogic Thing Plus - EOS S3 | Manualzz](http://s1.manualzz.com/store/data/070309431_1-f50b8bfcc923b09c1100262b956edd66-360x466.png)
Chapter 26.
Sensor sub-system registers
The Sensor Manager is programmed using the QuickLogic compiler for the Sensor Manager instruction set.
Control for the Sensor Hub is also performed through direct operations with FFE registers. The I
2
C and SPI interfaces are accessed by indexed write and read operations performed through FFE registers. For example, addressing interfaces on the Wishbone buses is performed by write to the FFE WB_ADDR register.
The following describes the FFE register set.
26.1
FFE registers
Offset Name/Field
0x000 WB_ADDR
Addr
RESERVED slave_sel
0x004 WDATA
0x008 CSR spi0_mux_sel i2c1_mux_sel i2c0_mux_sel
OVFL
BUSY mux_wb_sm wb_ms_wen wb_ms_start
Bits
7:0
2:0
5:3
7:6
7:0
7:0
7
6
5
4
3
2
1
0
Type
RW
RW
RW
RW
RW
RW
RW
RW
RW
RO
RO
WO
RW
RW
Default
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
Description
Wishbone Bus Master address selection
Slave address register via Wishbone Bus master
Reserved
The two MSBs select which slave is accessed by Wishbone Bus master
0x0 = I2C_0
0x1 = I2C_1
0x2 = SPI_0
This register is for writes to an I2C slave. It is the I2C slave data register selected via the
Wishbone Bus master
Control and Status register
SPI_0_Master wishbone control mux select
1 = Control from Wishbone Bus Master
0 = Control from SM1
I2C_1 wishbone control mux select
1 = Control from Wishbone Bus Master
0 = Control from SM1
I2C_0 wishbone control mux select
1 = Control from WB Master
0 = Control from SM0 ffe_push_overflow
WB busy
Mux select choosing between SM and WB masters
1 = WB master
0 = SM WB master)
WB master write enable
1 = Write
0 = Read
WB master start transactions. This bit is self clear
Retent ion?
No
No
No
EOS S3 TRM (r1.01a) Confidential Page 253
Offset Name/Field
0x00C RDATA
0x014 SRAM_test_reg1
DM1_RME
DM1_TEST1
DM0_RM
DM0_RME
DM0_TEST1
CM2k_RM
CM2k_RME
CM2k_TEST1
CM8k_RM
CM8k_RME
CM8k_TEST1
SM0_RM
SM0_RME
SM0_TEST1
SM1_RM
SM1_RME
SM1_TEST1
0x018 SRAM_test_reg2
DM3_RM
DM3_RME
DM3_TEST1
DM2_RM
DM2_RME
DM2_TEST1
DM1_RM
0x020 FFE_CSR i2c2_sel
EOS S3 TRM (r1.01a)
31:0
31
30
29:26 RW
25 RW
24 RW
23:20 RW
RW
RW
RW
19
18
RW
RW
17:14 RW
13 RW
12
11:8
7
RW
RW
RW
11
10
9:6
5
6
5:2
1
0
RW
RW
RW
RW
31:0 RW
15:12 RW
4
3:0
31:0
RW
RW
RW
RW
RW
RW
RW
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
Bits Type Default Description
7:0
0
RO
RW
0x0
0x0
This register is for reads from an I2C slave.
Read data from I2C to WB master is registered
SRAM test control register 1
DM1_RME control to FFE SRAM module
DM1_TEST1 control to FFE SRAM module
DM0 RM [3:0] control to FFE SRAM module
DM0_RME control to FFE SRAM module
DM0_TEST1 control to FFE SRAM module
CM2k_RM [3:0] control for FFE SRAM
CM2k_RME control for FFE SRAM
CM2k_TEST1 control for FFE SRAM
CM8k_RM [3:0] control for FFE SRAM
CM8k_RME control for FFE SRAM
CM8k_TEST1 control for FFE SRAM
SM0_RM[3:0] control for FFE SRAM
SM0_RME control for FFE SRAM
SM0_TEST1 control for FFE SRAM
SM1_RM[3:0 control for FFE SRAM
SM1_RME control for FFE SRAM
SM1_TEST1 control for FFE SRAM
SRAM test control register 2
DM3 RM [3:0] control to FFE SRAM module
DM3_RME control to FFE SRAM module
DM3_TEST1 control to FFE SRAM module
DM2 RM [3:0] control to FFE SRAM module
DM2_RME control to FFE SRAM module
DM2_TEST1 control to FFE SRAM module
DM1 RM [3:0] control to FFE SRAM module
FFE Control and Status Register
1: selects i2c 2
0: selects i2c 1
Retent ion?
No
No
Yes
No
Confidential Page 254
Offset Name/Field
I2c0_dyn_pullup_en
I2c1_dyn_pullup_en
I2c2_dyn_pullup_en
RESERVED
0x038 FFE_DEBUG_COMBINED
SM0_SM_debug
SM1_SM_debug
FFE_debug
0x100 COMMAND
RUN_FFE_ONCE
RESERVED
RUN_SM0_ONCE
RUN_SM1_ONCE
0x108 INTERRUPT
SM_MULT_WR_INTR
FFE_OVERRUN
RESERVED
RESERVED
FFE_SM1_OVERRUN
FFE_SM0_OVERRUN
Bits Type
31:4
31:0
7:0
1
2
3
RW
RW
RW
15:8 RO
23:16 RO
31:0
RO
RO
RO
0
1
2
3
31:0
0
1
2
3
4
5
WO
WO
WO
WO
RW1
C
RW1
C
RO
RO
RW1
C
RW1
C
Default
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
Description
I2c0 dynamic pull-up enable
I2c1 dynamic pull-up enable
I2c2 dynamic pull-up enable
Reserved
Combined FFE debug signals
Sensor memory 0 debug signals
Sensor memory 1 debug signals
FFE debug signals
When a ‘1’ is written to this location, causes the FFE to execute one complete run of its algorithm; reads as 0
Reserved
When a ‘1’ is written to this location, causes
SM0 to run once; reads as 0
When a ‘1’ is written to this location, causes
SM1 to run once; reads as 0
This bit is set when an FFE tries to write to more than one FIFO simultaneously. The
FIFO PUSH value must be one hot, with only one pushd asserted.
This bit is set when the FFE does not complete running its code (the algorithm) by the time the next sample period begins. This bit can only be cleared by issuing a device reset (software reset, or global reset via the
Reset pin).
Reserved
Reserved
This bit is set when SM1 does not complete the algorithm by the time the next sample period begins. This bit can only be cleared by issuing a device reset (software reset, or global reset via the Reset pin).
This bit is set when SM0 does not complete the algorithm by the time the next sample period begins. This bit can only be cleared by issuing a device reset (software reset, or global reset via the Reset pin).
Retent ion?
No
No
Yes
EOS S3 TRM (r1.01a) Confidential Page 255
Offset Name/Field
I2C_MS_1_ERROR
I2C_MS_0_ERROR
CM_8k_LP_INTR
DM0_LP_INTR
DM1_LP_INTR
SM0_LP_INTR
SM1_LP_INTR
FFE_BP_MATCH_INTR
Reserved
PKFB_OVF_INTR
SM0_BP_MATCH_INTR
SM1_BP_MATCH_INTR
SPI_0_MS_INTR
CM_2k_LP_INTR
DM2_LP_INTR
DM3_LP_INTR ahbm_bus_error_intr
0x10c INTERRUPT_ENABLE
SM_MULT_WR_INTR_EN
EOS S3 TRM (r1.01a)
15
16
17
18
19
20
21
22
31:0
0
RW1
C
RW1
C
RW1
C
RW1
C
RW1
C
RW1
C
RW1
C
RW1
C
Bits Type Default Description
6
7
8
9
10
11
12
13
14
RW1
C
RW1
C
RW1
C
RW1
C
RW1
C
RW1
C
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
This bit is set when the I2C Master receives a NACK when transmitting a device address.
The I2C Master is used by the Sensor
Manager to retrieve sensor data.
This bit is set when the I2C Master receives a NACK when transmitting a device address.
The I2C Master is used by the Sensor
Manager to retrieve sensor data.
This bit is set when there is an access to the memory while it is in low power (deep sleep or shut down)
This bit is set when there is an access to the memory while it is in low power (deep sleep or shut down)
This bit is set when there is an access to the memory while it is in low power (deep sleep or shut down)
This bit is set when there is an access to the memory while it is in low power (deep sleep or shut down)
This bit is set when there is an access to the memory while it is in low power (deep sleep or shut down)
This bit is set when there is a break point match in FFE
Reserved
RW1
C
RW1
C
RW1
C
RW
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
This bit is set when the FFE pushes to the
PKFB causing an overflow
This bit is set when there is a break point match in SM0
This bit is set when there is a break point match in SM1
This bit is set when there is an interrupt request from SPI_0_Master for sensor
This bit is set when there is an access to the memory while it is in low power (deep sleep or shut down)
This bit is set when there is an access to the memory while it is in low power (deep sleep or shut down)
This bit is set when there is an access to the memory while it is in low power (deep sleep or shut down)
This bit is set when there is a bus error on the AHB bus (HRESP=1).
Interrupt enabled
0: mask interrupt
1: enable interrupt
Retent ion?
Yes
Confidential Page 256
Offset Name/Field
FFE_OVERRUN_EN
RESERVED
RESERVED
FFE_SM1_OVERRUN_EN
FFE_SM0_OVERRUN_EN
I2C_MS_1_ERROR_EN
I2C_MS_0_ERROR_EN
CM_8k_LP_INTR_EN
DM0_LP_INTR_EN
DM1_LP_INTR_EN
SM0_LP_INTR_EN
SM1_LP_INTR_EN
FFE_BP_MATCH_INTR_EN
Reserved
PKFB_OVF_INTR_EN
SM0_BP_MATCH_INTR_EN
SM1_BP_MATCH_INTR_EN
SPI_MS_INTR_EN
Bits Type Default Description
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
Interrupt enabled
0: mask interrupt
1: enable interrupt
Reserved
Reserved
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled for I2C_1_Master
0: mask interrupt
1: enable interrupt
Interrupt enabled for I2C_0_Master
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
Reserved
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
Retent ion?
EOS S3 TRM (r1.01a) Confidential Page 257
Offset Name/Field
CM_2k_LP_INTR_EN
DM2_LP_INTR_EN
DM3_LP_INTR_EN ahbm_bus_error_intr_en
0x110 STATUS
SM0_BUSY
SM1_BUSY
FFE_BUSY
Reserved
FFE_BG_FLAG
FFE_FG_FLAG
0x114 MAILBOX_TO_FFE
MAILBOX_TO_FFE
0x120 SM_RUNTIME_ADDR
SM_RUNTIME_ADDR
0x124 SM0_RUNTIME_ADDR_CTRL
SM0_RUNTIME_ADDR_NEW
0x128 SM1_RUNTIME_ADDR_CTRL
SM1_RUNTIME_ADDR_NEW
EOS S3 TRM (r1.01a)
Bits Type Default Description
19
20
21
22
31:0
0
1
5
31:0
2
3
4
31:0
31:0
9:0
31:0
0
31:0
0
RW
RW
RW
RW
RO
RO
RO
RO
RO
RO
RW
RW
RW
RW
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
Interrupt enabled
0: mask interrupt
1: enable interrupt
This bit is set whenever the Sensor Manager
0 is busy.
This bit is set whenever the Sensor Manager
1 is busy.
This bit is set whenever the FFE is busy.
Reserved.
This is the FFE background thread status
This is the FFE foreground thread status
This is the M4 Mailbox register to the FFE.
This register can be set by system software to send a message or configuration information to the FFE as it runs its algorithm, thus affecting the algorithm while it is running. A special instruction may be used in the algorithm to read this mailbox register.
SM0/SM1 run time address
Write a '1' to Toggle signal used to signal when a new value has been written
Write a '1' to Toggle signal used to signal when a new value has been written
Retent ion?
No yes
No
No yes
Confidential Page 258
Offset Name/Field
0x12c SM0_RUNTIME_ADDR_CUR
SM0_RUNTIME_ADDR_CUR
0x130 SM1_RUNTIME_ADDR_CUR
SM1_RUNTIME_ADDR_CUR
0x140 SM0_DEBUG_SEL
SM0_DEBUG_SEL
0x144 SM1_DEBUG_SEL
SM1_DEBUG_SEL
0x148 FFE_DEBUG_SEL
FFE_DEBUG_SEL_SM0
FFE_DEBUG_SEL_SM1
FFE_DEBUG_SEL_FFE0
FFE_TOP_DEBUG_SEL
0x150 FFE_BREAK_POINT_CFG
FFE_BP_EN
FFE_FORCE_STOP
FFE_BreakPt_Sw_Brk
0x154 FFE_BREAK_POINT_CONT
SM1_BP_CONT
SM0_BP_CONT
Bits Type Default Description
31:0
9:0
31:0
9:0
31:0
7:0
31:0
7:0
31:0
7:0
15:8 RW
23:16 RW
RW
RW
RO
RO
RW
25:24
31:0
0
1
2
31:0
2
1
RW
RW
RW
RW1
T
RW
RW
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
SM0 current program counter
SM1 current program counter
SM0 Debug selection
SM1 Debug selection
SM0 LS debug selection
SM1 LS debug selection
FFE LS debug selection
FFE_TOP MS debug selection
0: SM0
1: SM1
2: FFE
"break point" execution
0 : Disabled
1 : Enabled
This causes the FFE to immediately halt execution.
Causes the signal to toggle when written with a '1' in this bit position.
This is a single, host controlled input toggle signal, Break Point Match Continue.
Software uses this toggle signal to resume code execution from the Break Point condition.
This is a single, host controlled input toggle signal, Break Point Match Continue.
Software uses this toggle signal to resume code execution from the Break Point condition.
Yes
Retent ion?
No
No
No
No yes
No
EOS S3 TRM (r1.01a) Confidential Page 259
Offset Name/Field
FFE_BP_CONT
0x158 FFE_BREAK_POINT_STAT
SM1_BP_MATCH
SM0_BP_MATCH
FFE_BP_MATCH
0x160 FFE_BP_XPC_0
FFE_BP_XPC_0
0x164 FFE_BP_XPC_1
FFE_BP_XPC_1
0x168 FFE_BP_XPC_2
FFE_BP_XPC_2
0x16C FFE_BP_XPC_3
FFE_BP_XPC_3
Bits Type Default Description
0
31:0
2
1
31:0
13:0
31:0
13:0
0
31:0
13:0
31:0
13:0
RW
RO
RO
RW
RW
RW
RW
RO
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
This restarts FFE code execution following a pause due to reaching a "break point".
SM Break Point Match signal output to the host that notifies the host that the break point condition has been detected.
SM Break Point Match signal output to the host that notifies the host that the break point condition has been detected.
This signals that a "break point" has been reached and FFE execution is paused.
These registers hold the xPC (program counter) address "break points".
These registers hold the xPC (program counter) address "break points".
These registers hold the xPC (program counter) address "break points".
These registers hold the xPC (program counter) address "break points".
Retent ion?
No
Yes
Yes yes
Yes
EOS S3 TRM (r1.01a) Confidential Page 260
advertisement
Related manuals
advertisement
Table of contents
- 17 Introduction
- 17 EOS S3 SENSOR PROCESSING PLATFORM KEY FEATURES
- 17 Features List
- 22 THE S3 HIGH-LEVEL ARCHITECTURE
- 23 S3 block diagram with main sub-systems
- 24 The top-level internal system elements and peripherals in the S
- 24 List in alphabetical order
- 25 List by functional groups
- 27 Accessing elements and peripherals
- 27 Key blocks in the main sub-systems
- 27 Cortex-M4-F main modules
- 27 Voice / audio processor main modules
- 27 Sensor processor main modules
- 28 FPGA main modules
- 28 Communication Manager Modules
- 28 Buses in the S3: AHB, secondary buses, and bridges
- 29 Memory concepts in the S3 architecture
- 29 SRAM banks and their usage scenarios
- 29 Packet FIFOs
- 29 SRAM in the FPGA
- 29 Memory power domains and sleep modes
- 29 Support for designs with an Applications Processor
- 30 Support for standalone designs (Host Mode operation)
- 31 ARM Cortex-M4F Sub-System & Core IO
- 31 ARM CORTEX-M4F SUB-SYSTEM
- 31 Description
- 32 ARM Cortex-M4-F IP Configuration
- 33 ARM Cortex-M4-F Processor
- 33 Cortex-M4-F Processor Block Diagram
- 34 Cortex-M4-F Core Peripherals
- 34 Peripheral ID, Component ID, Designer ID, and Part and Revision Number
- 36 CPUID register
- 37 Buses
- 37 M4 AHB
- 37 AHB2APB bus bridges
- 38 Memory
- 38 Memory Map
- 41 Memory Address Decoding
- 44 M4 SRAM
- 45 SRAM Configuration
- 46 Registers
- 50 Memory Protection Unit (MPU)
- 51 MPU Registers
- 52 Nested Vectored Interrupt Controller (NVIC)
- 53 List of interrupts
- 53 NVIC Registers
- 54 Timers
- 54 M4 Timer
- 55 M4 Timer Registers
- 55 SysTick Timer
- 55 SysTick Register
- 56 Watchdog Timer (WDT)
- 56 WDT Registers
- 58 SYSTEM BUSES
- 58 M4 AHB bus
- 58 AON AHB bus
- 58 AHB2APB bus bridges
- 59 MEMORY
- 59 FIFOs
- 59 Packet FIFO
- 60 Registers
- 68 System DMA Controller (SDMA)
- 68 SDMA Registers
- 74 SDMA_BRIDGE Registers
- 76 VP DMAC
- 77 VP DMAC registers
- 79 INTERRUPT HARDWARE
- 79 Wake-up Interrupt Controller (WIC)
- 79 Registers
- 80 ON-CHIP LDO POWER REGULATION
- 80 Design case: Internal Voltages Supplied by Two LDOs
- 81 Design case: Internal Voltages Supplied by Single LDO
- 82 Design case: Internal Voltages Supplied by External Source
- 83 POWER DOMAINS IN THE S
- 83 Main power domains in the S
- 84 AON A0 Always ON power domain
- 84 A1 domain
- 84 M4 power domain
- 84 M4 SRAMs power domain
- 85 SRAM Power Domains
- 86 CLOCK OSCILLATORS, SYSTEM CLOCKS, AND TIMERS
- 86 Introduction
- 86 Oscillators
- 86 The Slow Oscillator
- 86 Design using crystal
- 86 Design using external clock instead of crystal
- 87 The Fast Oscillator
- 87 Frequency selection
- 87 Selection of source for internal HSO_Clock
- 88 CLOCK DOMAINS, CLOCK CHAINS, AND THE CRU
- 88 Clock sources
- 88 Clock divider chains and the CRU
- 93 Clock Gating
- 93 Clock Reset Unit
- 93 CRU Control Register Background Information
- 96 CRU Registers
- 112 Core Special IO Functions & GPIO
- 112 CORE SPECIAL IO FUNCTIONS & GPIO OVERVIEW
- 113 COMMUNICATION MANAGER (CM) SUB-SYSTEM
- 113 CM Architecture
- 113 Top Level Controller in the CM
- 114 Communication Manager DMA controller
- 114 Communication Manager Theory of Operation
- 115 SPI_SLAVE INTERFACE IN THE CM
- 115 Introduction
- 115 Architecture
- 115 Usage Roles
- 116 SPI Interface Protocol for the SPI_Slave block
- 116 Basic Read/Write Transfers
- 117 Device ID Read
- 118 Transfer Types
- 118 Transfers to TLC Local Registers
- 118 Transfers from Packet FIFOs
- 118 Transfers to M4 Memory Address Space
- 118 Basic AHB Transfer Restrictions
- 119 AHB Memory Read
- 119 AHB Memory Burst Write
- 120 AHB Memory Burst Read
- 121 Communication Manager Components Registers
- 124 UART registers
- 133 CLOCKING AND TIMING ELEMENTS
- 133 RTC (Real Time Clock)
- 133 RTC Registers
- 133 SPT (Simple Periodic Timer)
- 134 Error Correction for 1mS Timer
- 135 Timeout Event Counter
- 135 Time Stamp Counters
- 135 PMU and FFE Wakeup
- 136 Registers for SPT and RTC
- 144 ANALOG IP (AIP) BLOCK
- 144 Real time clock
- 144 HS_OSC
- 144 AIP group registers
- 151 ANALOG-TO-DIGITAL CONVERTER (ADC)
- 151 Overview
- 151 Functional Description
- 151 PCB Layout Recommendations
- 152 Example Application
- 152 ADC Registers
- 153 S3 GPIO
- 153 IO Mux and GPIO Introduction
- 153 IO Mux Overview
- 154 How to Select Output Function
- 158 Selecting an Input Function
- 161 IOMux Assignments
- 170 GPIO Registers
- 211 PAD_x CTRL register Description
- 212 Voice / Audio Processing subsystem
- 212 VOICE / AUDIO PROCESSING SUB-SYSTEM
- 212 Introduction
- 212 General characteristics
- 213 Power
- 213 List of operating modes
- 213 Application example in system with Application Processor
- 214 Sub-system Architecture
- 214 Voice / Audio Processing sub-system internal block diagram
- 215 Pulse Density Modulation (PDM) Interface
- 215 S) Interface
- 215 Low-Power Sound Detect (LPSD)
- 216 PDM Internal CODEC Mode
- 217 PDM External CODEC Mode
- 218 PDM VoiceQ Mode
- 219 S Direct Mode
- 219 S Sub-Sample Mode
- 220 Voice / audio processing sub-system registers
- 225 Sensor Processing Hub Sub-system
- 225 SENSOR PROCESSING HUB SUB-SYSTEM
- 225 Introduction
- 225 Sensor Processing Hub Sub-System Architecture
- 225 Block diagram
- 226 Key elements in the Sensor Processing Hub sub-system
- 226 AHB master bridge for the Sensor Processing Hub
- 226 Related system components: Packet FIFO
- 227 General characteristics
- 227 Key functional characteristics
- 228 Power
- 229 SENSOR PROCESSING HUB THEORY OF OPERATION
- 229 Control and Flow
- 229 Operating flow
- 231 SM Mailboxes
- 231 Sampling and Timing
- 231 Time Stamping
- 232 FLEXIBLE FUSION ENGINE (FFE)
- 232 Architecture of the FFE
- 233 µDSP general functions
- 233 Instruction Memory
- 233 Data Memory
- 233 Theory of operation for the FFE
- 233 Power control
- 234 Mailboxes
- 234 Data handling
- 235 SENSOR MANAGERS
- 235 Sensor Manager Internal Architecture
- 235 Sensor Manager Memory
- 235 Structure of Sensor Manager memory
- 236 Related system elements
- 236 Wishbone Bus
- 236 C interfaces
- 237 C Master
- 237 SPI_0_Master
- 238 SPI_0_MASTER
- 238 Architecture and Operation
- 239 I/O signals for the SPI_0_Master block
- 240 Master / slave clocking
- 240 SPI Transactions
- 240 SPI Write Cycle
- 241 SPI Read Cycle
- 241 SPI Multiple Read Cycle
- 242 SPI 3 wire configuration
- 242 SPI corner cases
- 242 Clock Phase and Polarity Controls
- 242 Transfer Format for CPHA
- 245 SPI_0_Master Registers
- 245 Address Map
- 245 Register Descriptions
- 245 Register: SPI Baud Register LSB (SPIBR LSB) (Offset 0x00)
- 245 Register: SPI Baud Register MSB (SPIBR MSB) (Offset 0x01)
- 246 SPI Configuration Register (offset 0x02)
- 247 SPI Configuration Register (SPICR) (Offset 0x02)
- 248 Transmit Register (Offset 0x03) - Write only
- 248 Receive Register (Offset 0x03) -Read Only
- 248 SPI Command (Transfer) Register (Offset 0x04) -Write Only
- 249 SPI Interrupt / Status Register (Offset 0x04) -Read Only
- 249 Slave Select Register (Offset 0x05)
- 250 SPI bit / clock control register (Offset 0x06)
- 250 Number of SPI clocks required after CSn is de-activated (Offset 0x07)
- 251 Programming
- 251 SPI Host Operation
- 251 Read Operation
- 252 Write Operation
- 253 SENSOR SUB-SYSTEM REGISTERS
- 253 FFE registers
- 261 FPGA Sub-system
- 261 FPGA SUB-SYSTEM
- 261 Introduction
- 261 Power
- 261 Sub-system Architecture
- 261 FPGA sub-system components
- 262 Functional Description
- 262 Logic Cell
- 263 RAM/FIFO
- 266 FIFO Controller
- 270 Distributed Clock Networks
- 270 Global Clocks
- 273 Configurable Input/Output Signals
- 274 Multipliers
- 275 Interface to the On-Chip Programmable Logic
- 275 S3 Platform Interface
- 276 FPGA Use
- 276 FPGA Configuration Control
- 276 FPGA sub-system registers
- 277 Debug
- 277 M4-F DEVELOPMENT AND DEBUG SUPPORT ELEMENTS
- 277 Integrated Configurable Debug
- 277 Serial Wire Debug port (SWD)
- 277 Debug Configuration
- 278 Debug Bootstrap Configuration
- 278 Companion/High-Level O/S Host Configuration (Application Processor in System)
- 278 Host Configuration (the EOS S3 system operating as Host)
- 279 DAP accessible ROM table
- 279 AHB-AP
- 279 Instrumentation Trace Macrocell (ITM)
- 279 ITM Registers
- 281 Data Watchpoint and Trace (DWT)
- 281 Registers
- 283 Flash Patch and Breakpoint Unit (FPB)
- 283 FPB Registers
- 284 Trace Port Interface Unit (TPIU)
- 284 TPIU Registers
- 285 Misc. Resources
- 285 EFUSE
- 285 eFuse Registers
- 287 System Considerations
- 287 SYSTEM CONFIGURATION FOR START-UP
- 287 System design modes
- 287 Selecting system design mode on boot
- 287 Configuration for debugging
- 288 Configuring to identify that M4 Serial Wire Debugger is present
- 288 Configuring M4 Serial Wire Debug Port pin assignment
- 288 Configuring clock oscillators
- 288 Boot-time configuration for use of internal HS_Osc or external driver for HS_Osc
- 289 I/O configuration
- 289 LDO configuration
- 289 FPGA configuration
- 290 RESET, START-UP, AND INTERRUPTS
- 290 Reset
- 291 Startup flow for Companion Mode
- 291 Startup flow for Host Mode
- 291 Host mode boot load from external flash
- 292 Interrupts
- 293 Functions of the NVIC and WIC interrupt controllers
- 293 Interrupt Sources
- 294 POWER MODES
- 294 Introduction
- 295 Power Modes in the S
- 295 Comparison of Power Modes
- 297 Methods for entering Low Power Modes
- 297 Software sources for initiating low-power modes
- 299 Hardware sources for initiating low-power modes
- 299 Methods for exiting Low Power Modes
- 300 Software sources for exiting low power mode
- 301 Hardware sources for exiting low power mode
- 302 M4 Sub-System Low Power Modes
- 302 M4-F Sleep Modes
- 303 M4 SRAM power domains and sleep Modes
- 303 M4 SRAM Sleep Modes: LPMF and LPMH
- 304 M4 Power Domain Configuration
- 304 M4 Power Domain Status
- 304 M4 Entering Low Power Mode
- 304 M4 Exiting Low Power Mode
- 304 M4 SRAM Power Domain Configuration
- 304 M4 SRAM Power Domain Status
- 304 M4 SRAM Entering Low Power Mode
- 305 M4 SRAM Exiting Low Power Mode
- 305 Voice (Audio) Sub-System Low Power Modes
- 305 Entry to a Low Power State
- 305 Exiting from a Low Power State
- 305 Voice (Audio) Sub-System SRAM Low Power Modes
- 305 Entry to a Low Power State
- 305 Exiting a Low Power State
- 305 FPGA (FB) Sub-System Low Power Modes
- 307 Sensor Processing (FFE) Sub-System Low Power Modes
- 307 SDMA Low Power Mode
- 308 THE CONFIGURATION MANAGER SUB-SYSTEM
- 308 Introduction
- 308 Configuration sub-system architecture
- 309 Configuration State Machine General Operation
- 309 Read Header Contents from Flash
- 310 Boot SPI
- 310 Deep Sleep Mode
- 310 Software Considerations
- 311 Configuration DMA
- 312 How to Start a DMA
- 312 How to Stop an Active DMA Transfer
- 313 SPI MASTER
- 314 SPI Master
- 314 SPI Transfer Modes
- 315 Transmit and Receive
- 315 Transmit Only
- 315 Receive Only
- 315 EEPROM Read
- 316 SPI Flash Command Write
- 318 SPI Flash Page Write
- 319 Sytem Clocks
- 319 CLOCK SETUP
- 319 Change the Oscillator Frequency
- 321 Oscillator Programming Table
- 322 Setup the Clock Source
- 325 Setup the Divider
- 333 Enable the Clock Gate
- 339 FUNCTIONAL DOMAIN CLOCK SETUP
- 340 Setup PKFB clocks
- 340 Setup Fabric clocks
- 342 Setup Voice Subsystem clocks
- 342 Setup SDMA clocks
- 343 Setup M4 clocks
- 343 Setup A1 CfgSM Clocks
- 345 Setup Analog-to-Digital Convertor
- 347 Setup I2S Slave Clock
- 350 Setup M4 Peripheral Clocks
- 351 HOW TO BRING CLOCK OUT TO DEBUG PIN
- 353 SOFTWARE RESETS
- 357 TERMINOLOGY AND CONVENTIONS
- 357 Glossary of terms
- 361 Structure of a register definition
- 363 REFERENCE DOCUMENTS