AT32F435/437
Series Reference Manual
2022.11.11
Page 662
Rev 2.03
28
Qud-SPI interface (QSPI)
28.1 Introduction
The ATQSPI020 interface consists of a command-based slave port, an XIP port (direct address mapping
access) and ATQSPI020 interface controller used for SPI Flash command execution. The command-
based slave port is used to access registers and data ports, and the XIP slave port reads data from
direct address mapping. Additionally, the ATQSPI020 allows AHB data port to access data in either IPO
or DMA mode.
28.2 QSPI main features
DMA handshake and CPU PIO modes
SPI mode, dual/quad output mode, dual/quad I/O mode and DPI/QPI mode
XIP port (direct address mapping read/write)
XIP port prefetch function (2-channel read cache)
128-byte TxFIFO/RxFIFO depth
Programmable divider
Figure 28-1 Function block diagram
28.3 QSPI command slave port
28.3.1 QSPI command slave port
The ATQSPI020 has a command slave interface that contains register and data ports. The users can
access registers or data ports using this interface. The command word register must be written
sequentially (CMD_W3 is the last to be written) and is accessible in words, while any other registers
(including data port register) can be accessed by bytes, half-words and words.
28.3.2 CPU PIO mode
The data port can be accessed in either PIO or DMA mode. The RxFIFO / TxFIFO registers (0x18)
must be polled in PIO mode. When the RxFIFO is ready, the user can read or store the entire RxFIFO
data. When the TxFIFO is ready, it can be written with the entire data. The polling state must be
guaranteed in PIO mode.
Command
Slave Port
DMA HS
3
2
b
it
D
a
ta
a
n
d
C
o
n
tr
o
l S
ig
n
a
ls
TX FIFO
RX FIFO
Un-Pack
Pack
SPI
CTRL
Read
Sync
DIV
SPI
Device
Global/Status
Registers
CS#
DO
DI
WP#
HOLD#
SCK_out
SCK_in
Prefetch
XIP
Slave
Port
A
H
B
B
u
s
In
te
rc
o
n
n
e
ct
DEC
32
8
8
32
ENC