![](http://datasheet.mmic.net.cn/260000/PONE-000-01_datasheet_15945946/PONE-000-01_25.png)
March 2000
CEWay
PL-One Data Sheet
D-CW-0100-04
Page 25 of 56
Reception (RCV)
This is the state that the PLSES enters into when it detects a CEBus-like signal on the channel.
Explanations of the various actions and decisions found in the flowchart are listed below:
Wait for PLSES Handshake Interrupt: Wait for the PLSES to generate its interrupt (INT0*). Note that in
order for the PLSES to consider that the interrupt has been processed and be able to send another
interrupt, you need to read the Ph_Confirm_Reg (see PLSES Handshake Interrupt Generation on page 12).
PEOF Received: If the Ph_Confirm_Reg is 1X1X 0110 bin, this indicates that you have just received the
PEOF. If the
ch_noisy
bit is set, it means that the medium was noisy and that only between 3 to 6 PEOF
symbols were detected. If it is not set, it means that the medium was not noisy. If the
be/bf
bit (buffer full)
is set, it means that the received Preamble symbols are stored in the Ph_Rx_Buffer. If it is not set, it
means that there were no received Preamble symbols (probably an acknowledgement packet or an
Immediate Retry packet). In this case, the Ph_Rx_Buffer value is irrelevant. If you did not get a PEOF
delimiter in the Ph_Confirm_Reg, it means that you are still receiving the Preamble symbols, or have
detected a Symbol_Noise condition.
RCV_JABBER_DETECT Detected: If the
jabber
bit (jabber detected) is set, and the PLSES is in the RCV
state, this indicates that the PLSES has received 1000 consecutive SUPERIOR symbols.
Process RCV_JABBER_DETECT: You need to force the PLSES back to the IDLE state by setting the
stop_rx
bit.
SYMBOL_NOISE Detected: If the
ch_noisy
bit (channel noisy) is set, this means that it was noise on the
channel that caused the PLSES to transition to the RCV_PRE_SYM state. Otherwise, you are still
receiving the Preamble and/or PEOF.
Process SYMBOL_NOISE: The PLSES automatically transitions from RCV_PRE_SYM to IDLE when a
Symbol_Noise condition occurs, and the PL-One firmware should do the same.
CARRIER_LOST Detected: If the
ch_noisy
bit is set in any PLSES Handshake Interrupt past the
reception of the PEOF, it means that a Carrier_Lost condition has occurred. This is when an INFERIOR
state is detected on the channel after receiving a PEOF, but before receiving the last CRC symbol.
Process CARRIER_LOST: A Carrier_Lost condition was detected so the received part of the packet is
not complete. Unlike the Symbol_Noise condition, the PLSES does not automatically transition back to the
IDLE state when a Carrier_Lost condition occurs. The PL-One firmware needs to update its MACS state
variables to deal with the Carrier_Lost condition, and then proceed to the Reset RCV state.
Reset RCV State: Set the
stop_rx
bit (stop reception), which forces the PLSES back to the IDLE state.
Next Byte Received: If the
be/bf
bit (buffer full) is set, it means that the PLSES received a data byte and it
is in the Ph_Rx_Buffer. If it is not set, it means that all that was received was a delimiter. Note that it is
possible to receive both a data byte and a delimiter in the same interrupt.
Read Data Byte: Read one data byte from Ph_Rx_Buffer.