GD32VF103 User Manual
391
Flag
Description
Clear method
Interrupt
enable bit
CONFERR
Configuration fault error
Read or write SPI_STAT register,
then write SPI_CTL0 register.
ERRIE
RXORERR
Rx overrun error
Read SPI_DATA register, then
read SPI_STAT register.
CRCERR
CRC error
Write 0 to CRCERR bit
FERR
TI mode format error
Write 0 to FERR bit
18.7.
I2S block diagram
Figure
18
-
11
. Block diagram of I2S
Clock Generator
SPI_MOSI /
I2S_SD
SPI_NSS /
I2S_WS
SPI_SCK /
I2S_CK
I2S_MCK
Master Control Logic
Slave Control Logic
TX Buffer
Shift Register
RX Buffer
Control
Registers
16 bits
I2SCLK
16 bits
LSB
MSB
PAD
PAD
O
I
O
I
PAD
O
I
PAD
O
I
APB
There are five sub modules to support I2S function, including control registers, clock
generator, master control logic, slave control logic and shift register. All the user configuration
registers are implemented in the control registers module, including the TX buffer and RX
buffer. The clock generator is used to produce I2S communication clock in master mode. The
master control logic is implemented to generate the I2S_WS signal and control the
communication in master mode. The slave control logic is implemented to control the
communication in slave mode according to the received I2S_CK and I2S_WS. The shift
register handles the serial data transmission and reception on I2S_SD.
18.8.
I2S signal description
There are four pins on the I2S interface, including I2S_CK, I2S_WS, I2S_SD and I2S_MCK.
I2S_CK is the serial clock signal, which shares the same pin with SPI_SCK. I2S_WS is the
frame control signal, which shares the same pin with SPI_NSS. I2S_SD is the serial data
signal, which shares the same pin with SPI_MOSI. I2S_MCK is the master clock signal. It
produces a frequency rate equals to 256 x Fs, and Fs is the audio sampling frequency.