UM10850
All information provided in this document is subject to legal disclaimers.
© NXP B.V. 2016. All rights reserved.
User manual
Rev. 2.4 — 13 September 2016
334 of 464
24.1 How to read this chapter
Read this chapter for a description of the optional FIFOs for the USART and SPI
interfaces.
24.2 Basic configuration
The System FIFO is configured using the following registers:
•
Use the AHBCLKCTRL1 register (
) to enable the clock to the System FIFO
register interface.
•
Clear the System FIFO peripheral reset using the PRESETCTRL1 register (
).
•
Interrupts: System FIFO interrupts are shared with peripheral interrupts. The VIFO
and the serviced peripherals should be configured such that only one generates any
particular data interrupt. Non-data interrupt may come directly from the peripheral.
Interrupts are enabled in the NVIC using the appropriate Interrupt Set Enable register.
•
DMA: transmit and receive functions handled by the System FIFO can also be
operated with the system DMA controller (see
). FIFOS that will be used
with DMA must be enabled via the FIFOCTRL register, see
.
•
Timeouts: The watchdog oscillator must run for the UART and SPI timeout counter to
work. Enable the watchdog oscillator via the PDRUNCFG register (
).
24.3 Features
•
Performs transmit and receive FIFO operations for all USARTs and SPIs on a device,
supporting software or DMA access to each peripheral transmit and receive functions.
•
FIFOs provide additional timing elasticity, which is extended when they are used in
conjunction with DMA.
•
Buffer space is provided separately for each peripheral type (USART and SPI) and
can be allocated to each peripheral within the type by the user. there are 16 FIFO
entries for USART transmit, 16 for USART receive, 8 for SPI transmit, and 8 for SPI
receive.
•
The System FIFO accesses APB peripherals at the lower speed (which depends on
the peripheral clock rate) and allows the CPU and/or DMA to access data at AHB
rates, with no stalls, regardless of how slow the peripheral bus clock is running.
•
Each peripheral transmit and receive FIFO has a software settable threshold ranging
from 1 to FIFO full.
•
Each peripheral transmit and receive FIFO provides a count of entries ranging from
empty to full.
•
The System FIFO provides status flags for peripheral receive data availability and
transmit FIFO availability. these can be used to generate interrupts or to signal the
system DMA.
UM10850
Chapter 24: LPC5410x System FIFO for Serial Peripherals
Rev. 2.4 — 13 September 2016
User manual