USB Type-C™ / USB Power Delivery interface (UCPD)
The ordered sets detected will thus include all SOP* codes:
–
–
–
but also
–
–
–
–
–
UCPD Receiver: EOP detection and Hard Reset exception handling
EOP is a fixed 5-bit K-Code marking the end of a message.
The way in which a transmitter is required to send a Hard Reset (should a previous
message transmit still be in progress) is that this previous message is truncated early with
an EOP.
If Hard Reset were ignored, then the EOP detection could be done only at the expected
time. However, due to the Hard Reset issue, the EOP detector must be active while an Rx
message is arriving. When an "early EOP" is detected, the truncated Rx message will
immediately be discarded.
UCPD Receiver exception handling: truncated or corrupt message exception
Once the ordered set has been detected, depending on the message, there may be data
bytes to be received which will be completed with a CRC and EOP. If at any point during
these phases, an error condition happens e.g.
–
–
in both of these cases, the receiver quits the current message, raising
RXERR at 1.
UCPD Receiver exception handling: short preamble or incomplete ordered
set exception
In the exceptional case of the receiver seeing less that half of the expected preamble, the
frequency estimation allowing correct BMC-decode becomes impossible. Even if the full
preamble is seen, allowing frequency estimation, but the ordered set is not fully received
before the line becomes static, the receiver state machine will not start.
In both of these cases, the clock-recovery/BMC decoder will re-start, checking initially for an
IDLE condition, followed by a preamble, and then estimating frequency.
2014/2083
SOP
SOP'
SOP''
Hard Reset
Cable Reset
SOP'_Debug
SOP''_Debug
Two extensions defined by registers USBPD1_RX_ORDEXT1 and
USBPD1_RX_ORDEXT2
the line becomes static for a time significantly over the "1 UI" length (the exact
threshold for this condition is not critical but the exception should happen before 3
UIs),
the message goes to the end but it is not recognized (e.g. EOP is corrupted)
RM0440 Rev 1
RM0440
with
RXMSGEND
Need help?
Do you have a question about the STM32G4 Series and is the answer not in the manual?
Questions and answers