![NXP Semiconductors LPC43Sxx Скачать руководство пользователя страница 890](http://html1.mh-extra.com/html/nxp-semiconductors/lpc43sxx/lpc43sxx_user-manual_1721827890.webp)
UM10503
All information provided in this document is subject to legal disclaimers.
© NXP B.V. 2015. All rights reserved.
User manual
Rev. 2.1 — 10 December 2015
890 of 1441
NXP Semiconductors
UM10503
Chapter 28: LPC43xx/LPC43Sxx Ethernet
descriptor is still owned by the host, by default, the DMA discards the current frame at the
top of the MTL Rx FIFO and increments the missed frame counter. If more than one frame
is stored in the MTL Rx FIFO, the process repeats.
The discarding or flushing of the frame at the top of the MTL Rx FIFO can be avoided by
setting Operation Mode register bit 24 (DFF) in
. In such conditions, the receive
process sets the Receive Buffer Unavailable status and returns to the Suspend state.
28.7.6.2.9
Interrupts
Interrupts can be generated as a result of various events. The DMA Status register
(
) contains all the bits that might cause an interrupt.
contains an
enable bit for each of the events that can cause an interrupt.
There are two groups of interrupts, Normal and Abnormal, as described in DMA Status
register (
). Interrupts are cleared by writing a 1 to the corresponding bit position.
When all the enabled interrupts within a group are cleared, the corresponding summary
bit is cleared. When both the summary bits are cleared, the interrupt signal is de-asserted.
If the MAC core is the cause for assertion of the interrupt, then any of the GLI, GMI, or GPI
bits of DMA Status register (
) are set HIGH.
Remark:
The DMA Status register (
) is the (interrupt) status register. The
interrupt pin is asserted because of any event in this status register only if the
corresponding interrupt enable bit is set in DMA Interrupt Enable Register (
Interrupts are not queued and if the interrupt event occurs before the driver has
responded to it, no additional interrupts are generated. For example, the Receive Interrupt
(bit 6 of the DMA Status Register (
) indicates that one or more frames were
transferred to the Host buffer. The driver must scan all descriptors, from the last recorded
position to the first one owned by the DMA.
An interrupt is generated only once for simultaneous, multiple events. The driver must
scan the DMA Status register (
) for the cause of the interrupt. The interrupt is not
generated again unless a new interrupting event occurs, after the driver has cleared the
appropriate bit in DMA Status register. For example, the controller generates a DMA
Receive interrupt (bit 6 of the DMA Status register), and the driver begins reading DMA
Status register. Next, Receive Buffer Unavailable (bit 7 of DMA Status register (Status
Register)) occurs. The driver clears the Receive interrupt. Even then, the sbd_intr_o
signal is not de-asserted, because of the active or pending Receive Buffer Unavailable
interrupt.
An interrupt timer RIWT (bits 7:0 in Receive Interrupt Watchdog Timer Register
(
)) is given for flexible control of Receive Interrupt. When this Interrupt timer is
programmed with a non-zero value, it gets activated as soon as the RxDMA completes a
transfer of a received frame to system memory without asserting the Receive Interrupt
because it is not enabled in the corresponding Receive Descriptor (RDES1[31]. When this
timer runs out as per the programmed value, RI bit is set and the interrupt is asserted if
the corresponding RI is enabled in DMA Interrupt Enable register (
gets disabled before it runs out, when a frame is transferred to memory and the RI is set
because it is enabled for that descriptor.