Datasheet
Table Of Contents
- RP2040 Datasheet
- Colophon
- Chapter 1. Introduction
- Chapter 2. System Description
- 2.1. Bus Fabric
- 2.2. Address Map
- 2.3. Processor subsystem
- 2.4. Cortex-M0+
- 2.5. DMA
- 2.6. Memory
- 2.7. Boot Sequence
- 2.8. Bootrom
- 2.9. Power Supplies
- 2.10. Core Supply Regulator
- 2.11. Power Control
- 2.12. Chip-Level Reset
- 2.13. Power-On State Machine
- 2.14. Subsystem Resets
- 2.15. Clocks
- 2.16. Crystal Oscillator (XOSC)
- 2.17. Ring Oscillator (ROSC)
- 2.18. PLL
- 2.19. GPIO
- 2.20. Sysinfo
- 2.21. Syscfg
- 2.22. TBMAN
- Chapter 3. PIO
- Chapter 4. Peripherals
- 4.1. USB
- 4.2. UART
- 4.3. I2C
- 4.3.1. Features
- 4.3.2. IP Configuration
- 4.3.3. I2C Overview
- 4.3.4. I2C Terminology
- 4.3.5. I2C Behaviour
- 4.3.6. I2C Protocols
- 4.3.7. Tx FIFO Management and START, STOP and RESTART Generation
- 4.3.8. Multiple Master Arbitration
- 4.3.9. Clock Synchronization
- 4.3.10. Operation Modes
- 4.3.11. Spike Suppression
- 4.3.12. Fast Mode Plus Operation
- 4.3.13. Bus Clear Feature
- 4.3.14. IC_CLK Frequency Configuration
- 4.3.15. DMA Controller Interface
- 4.3.16. Operation of Interrupt Registers
- 4.3.17. List of Registers
- 4.4. SPI
- 4.5. PWM
- 4.6. Timer
- 4.7. Watchdog
- 4.8. RTC
- 4.9. ADC and Temperature Sensor
- 4.10. SSI
- 4.10.1. Overview
- 4.10.2. Features
- 4.10.3. IP Modifications
- 4.10.4. Clock Ratios
- 4.10.5. Transmit and Receive FIFO Buffers
- 4.10.6. 32-Bit Frame Size Support
- 4.10.7. SSI Interrupts
- 4.10.8. Transfer Modes
- 4.10.9. Operation Modes
- 4.10.10. Partner Connection Interfaces
- 4.10.11. DMA Controller Interface
- 4.10.12. APB Interface
- 4.10.13. List of Registers
- Chapter 5. Electrical and Mechanical
- Appendix A: Register Field Types
- Appendix B: Errata
- Appendix C: Documentation Release History
Table 172.
STREAM_CTR Register
Bits Description Type Reset
31:22 Reserved. - -
21:0 Write a nonzero value to start a streaming read. This will then
progress in the background, using flash idle cycles to transfer
a linear data block from flash to the streaming FIFO.
Decrements automatically (1 at a time) as the stream
progresses, and halts on reaching 0.
Write 0 to halt an in-progress stream, and discard any in-flight
read, so that a new stream can immediately be started (after
draining the FIFO and reinitialising STREAM_ADDR)
RW 0x000000
XIP: STREAM_FIFO Register
Offset: 0x1c
Description
FIFO stream data
Table 173.
STREAM_FIFO
Register
Bits Description Type Reset
31:0 Streamed data is buffered here, for retrieval by the system DMA.
This FIFO can also be accessed via the XIP_AUX slave, to avoid exposing
the DMA to bus stalls caused by other XIP traffic.
RF 0x00000000
2.7. Boot Sequence
Several components of the RP2040 work together to get to a point where the processors are out of reset and able to run
the bootrom (Section 2.8). The bootrom is software that is built into the chip, performing the "processor controlled" part
of the boot sequence. We will refer to the steps before the processor is running as the "hardware controlled" boot
sequence.
The hardware controlled boot sequence is as follows:
•
Power is applied to the chip and the RUN pin is high. (If RUN is low then the chip will be held in reset.)
•
The On-Chip Voltage Regulator (Section 2.10) waits until the digital core supply (DVDD) is stable
•
The Power-On State Machine (Section 2.13) is started. To summarise the sequence:
◦
The Ring Oscillator (Section 2.17) is started, providing a clock source to the clock generators. clk_sys and
clk_ref are now running at a relatively low frequency (typically 6.5MHz).
◦
The reset controller (Section 2.14), the execute-in-place hardware (Section 2.6.3), memories (Section 2.6.2
and Section 2.6.1), Bus Fabric (Section 2.1), and Processor Subsystem (Section 2.3) are taken out of reset.
◦
Processor core 0 and core 1 begin to execute the bootrom (Section 2.8).
2.8. Bootrom
The Bootrom size is limited to 16 kB. It contains:
•
Processor core 0 initial boot sequence.
•
Processor core 1 low power wait and launch protocol.
•
USB MSC class-compliant bootloader with UF2 support for downloading code/data to FLASH or RAM.
RP2040 Datasheet
2.7. Boot Sequence 156