A1
A0
B7
B6
B5
B4
B3
B2
B1
B0
C7
C6
C5
C4
C3
C2
C1
C0
CLKR
FSR
DR
RRDY
RFULL
RBR-to-DRR (B)
Read of DRR (A)
RBR-to-DRR copy (A)
No Read of DRR (A)
No RBR-to-DRR copy (B)
D7
A1
A0
B7
B6
B5
B4
B3
B2
B1
B0
C7
C6
C5
C4
C3
C2
C1
C0
No RBR-to-DRR copy (B)
RBR-to-DRR copy (A)
No RSR-to-RBR copy(C)
No Read of DRR(A)
CLKR
FSR
DR
RRDY
RFULL
No Read of DRR (A)
Architecture
1216
SPRUH82C – April 2013 – Revised September 2016
Copyright © 2013–2016, Texas Instruments Incorporated
Multichannel Buffered Serial Port (McBSP)
Either of the following events clears the RFULL bit to 0 and allows subsequent transfers to be read
properly:
•
Reading DRR
•
Resetting the receiver (RRST = 0) or the device
Another frame synchronization is required to restart the receiver.
shows the receive overrun condition. Because element A is not read before the reception of
element B is complete, B is not transferred to DRR yet. Another element, C, arrives and fills RSR. DRR is
finally read, but not earlier than two and one half cycles before the end of element C. New data D
overwrites the previous element C in RSR. If RFULL is still set after the DRR is read, the next element
can overwrite D if DRR is not read in time.
shows the case in which RFULL is set but the overrun condition is averted by reading the
contents of DRR at least two and a half cycles before the next element, C, is completely shifted into RSR.
This ensures that a RBR-to-DRR copy of data B occurs before the next element is transferred from RSR
to RBR.
Figure 25-23. Serial Port Receive Overrun
Figure 25-24. Serial Port Receive Overrun Avoided