24
IEEE 802.3bp Task ForceFebruary, 2015 Page 1 Version 1.0 Improving Interoperability between Autoneg and Forced Mode PHY Austin, TX, USA February 9, 2014 Mike Tu [email protected]

Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

IEEE 802.3bp Task Force– February, 2015 Page 1 Version 1.0

Improving Interoperability between

Autoneg and Forced Mode PHY

Austin, TX, USA

February 9, 2014

Mike Tu

[email protected]

Page 2: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 2 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 2

Contributors

• Peiqing Wang

• Steven Chen

• Mehmet Tazebay

Page 3: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 3 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 3

Motivation

• D1.2 defines two synchronization methods

– Clause 98 single twisted pair auto-negotiation

– Sub-Clause 97.6 aka forced mode

– Unable to link between PHYs with different synchronization methods

• For a PHY supporting both autoneg and forced mode, what

changes to D1.2 are needed to enable link with PHY supporting

only one of the synchronization methods?

Page 4: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 4 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 4

A Corner Case • Based on D1.2 state diagrams, PHY A will not

be able to tell if link partner is connected or not.

• Solution #1 – PHY A Tx alternates between AN link pulses and

SEND_S (MS)

– Problem: If PHY B with AN support is connected later, they may go into forced mode instead of desired AN.

• Solution #2 – SLAVE PHY in forced mode needs to start

SEND_S (SL)

– Some changes to SEND_S state diagram is required

– AN state diagram adding optional SEND_S detection

AN EnabledMS/SL ???

PHY A

forced modeSLAVE

PHY B

AN EnabledMS/SL ???

PHY A

unconnected

Scenario 1

Scenario 2

AN EnabledMS/SL ???

PHY A

Scenario 3

AN Enabled

PHY B

connected later

Page 5: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 5 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 5

Forced Mode State Diagram Figure 97-27

Page 6: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Forced mode (Fig 97-27) -- Original

start send_s_timertx_mode <= SEND_S

TX_SEND_S

start sigdet_wait_timertx_mode <= SEND_Z

SIGDET_WAIT

tx_mode <= SEND_Z

SILENT_WAIT

PAUSE

start sigdet_wait_timertx_mode <= SEND_Z

LINK GOOD CHECK

start link_fail_inhibit_timerlink_control <= ENABLE

start break_link_timertx_mode <= SEND_Zlink_control <= DISABLE

TRANSMIT DISABLE

LINK GOOD

Auto-Negotiation DISABLE

send_s_timer_done *config = SLAVE

send_s_sigdet = false *config = SLAVE

sigdet_wait_timer_done * config = MASTER

send_s_timer_done *config = MASTER

send_s_sigdet = true

send_s_sigdet = falseconfig = MASTER

sigdet_wait_timer_done

link_fail_inhibit_timer_done

link_status = OK

link_status = FAIL

power_on = true + mr_main_reset = true + mr_autoneg_enable = true

mr_autoneg_enable = false

break_link_timer_done *config = SLAVE

break_link_timer_done *config = MASTER

Page 7: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 7 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 7

Changes to Figure 97-27

• Same state machine for MS and SL PHY

• SEND_S sigdet does no require turning off transmitter

– This is always the case, but original state diagram assumes half-duplex.

• Synchronization is achieved when exiting the PAUSE state, when

both transmitters are turned off

• Additional state variable “forced_mode”

– When AN is disabled, default “forced_mode=true” after power_on/reset

– When AN is enabled, default “forced_mode=false” after power_on/reset

– AN state machine will set “forced_mode=true” if optional parallel detection

sees SEND_S

Page 8: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Forced mode (Fig 97-27)

-- New start send_s_timer1tx_mode <= SEND_S

TX_SEND_S1

start silent_wait_timer1tx_mode <= SEND_Z

SILENT_WAIT

start send_s_timer2tx_mode <= SEND_S

TX_SEND_S2

PAUSE

start silent_wait_timer2tx_mode <= SEND_Z

LINK GOOD CHECK

start link_fail_inhibit_timerlink_control <= ENABLE

start break_link_timertx_mode <= SEND_Zlink_control <= DISABLE

TRANSMIT DISABLE

LINK GOOD

Forced_Mode ENABLEsend_s_sigdet = true

silent_wait_timer1_done

send_s_timer1_done

send_s_sigdet = true

send_s_timer2_done

send_s_sigdet = false

link_fail_inhibit_timer_done

link_status = OK

link_status = FAIL

power_on = true + mr_main_reset = true + forced_mode = false

forced_mode = true

break_link_timer_done

silent_wait_timer2_done *send_s_sigdet = true

Page 9: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 9 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 9

Timers

• send_s_timer1: Timer used to control the duration SEND_S is transmitted during

TX_SEND_S1. The timer shall expire 1.0 us±0.04 us after being started.

• silent_wait_timer1: Timer used to control the duration of Tx silence during

SILENT_WAIT. The timer shall expire 4.0 us±0.1 us after being started.

• send_s_timer2: Timer used to control the duration SEND_S is transmitted during

TX_SEND_S2. The timer shall expire 8.0 us±0.1 us after being started.

• silent_wait_timer2: Timer used to control the duration of Tx silence during

PAUSE. The timer shall expire 8.0 us±0.1 us after being started.

Page 10: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 10 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 10

Auto-Negotiation State Diagram Figure 98-14

Page 11: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

New AN State

Diagram (Fig. 98-14)

transmit_ability <= truemr_lp_autoneg_able <= falsetoggle_tx <= mr_adv_ability[12]ability_match <= falseacknowledge_match <= falsetx_link_code_word[48:1] <= mr_adv_ability[48:1]mr_page_rx <= falsebase_page <= trueack_finished <= falseconsistency_match <= falseforced_mode <= false

ABILITY DETECT

IF(base_page=true) THENtx_link_code_word[10:6] <= rx_nonce[4:0]transmit_ability <= truetransmit_ack <= truemr_lp_autoneg_able <= truelink_control_[all] <= DISABLE

ACKNOWLEDGE DETECT

start break_link_timerlink_control_[all] <= DISABLEtransmit_diable <= truemr_page_rx <= falsemr_autoneg_complete <= falsemr_next_page_loaded <= false

TRANSMIT DISABLE

complete_ack <= truetransmit_ability <= truetransmit_ack <= truetoggle_rx <= rx_link_code_word[12]toggle_tx <= !toggle_txmr_page_rx <= truenp_rx <= rx_link_code_word[NP]mr_lp_adv_ability <= rx_link_code_word[48:1]

COMPLETE ACKNOWLEDGE

transmit_ability <= truemr_page_rx <= falsebase_page <= falsetx_link_code_word[48:13] <= mr_np_tx[48:13]tx_link_code_word[12] <= toggle_txtx_link_code_word[11:1] <= mr_np_tx[11:1]ack_finished <= falsemr_next_page_loaded <= false

NEXT PAGE WAIT

link_control_[notHCD] <= DISABLElink_control_[HCD] <= ENABLEan_link_good <= truestart link_fail_inhibit_timer

AN GOOD CHECK

an_link_good <= truemr_autoneg_complete <= true

AN GOOD

mr_page_rx <= falsemr_autoneg_complete <= falsemr_parallel_detection_fault <= false

Auto-Negotiation ENABLE

break_link_timer_done

ability_match=true *nonce_match=true

ability_match=true * nonce_match=false

(acknowledge_match=true * (consistency_match=flase + (ack_nonce_match=flase * base_page=true))) +an_receive_idle=true

acknowledge_match=true * (ack_nonce_match=true + base_page=false) *consistency_match=true

ack_finished=true *mr_next_page_loaded=true *

((tx_link_code_word[NP]=1) + (np_rx=1))

an_receive_idle=true

link_status[HCD]=FAIL

mr_autoneg_enable=true

power_on=true +mr_main_reset=true +mr_restart_negotiation=true +mr_autoneg_enable=false

link_status[HCD]=OK

ack_finished=true *tx_link_code_word[NP]=0 *

np_rx=0

ability_match=true *((toggle_rx ^ ability_match_word[12])=1)

mr_parallel_detection_fault <= truelink_control_[all] <= DISABLE

PARALLEL DETECTION FAULT

start autoneg_wait_timertransmit_disable <= trueforced_mode <= true

LINK STATUS CHECK

send_s_sigdet=true

UCT

autoneg_wait_timer_done *link_status=OK

autoneg_wait_timer_done *link_status=FAIL

Optional Implementaion

((link_status_[HCD]=FAIL + link_status_[HCD]=READY) * link_fail_inhibit_timer_done) +incompatible_link=true

Page 12: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 12 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 12

Changes to Figure 98-14

• Added new optional states “LINK STATUS CHECK” and “PARALLEL DETECTION FAULT”.

• In “ABILITY DETECT” state the PHY may implement correlation detectors for SEND_S(MS) and SEND_S(SL), in parallel to DME link pulse detector.

• If “send_s_sigdet = true”, then the link partner MS/SL configuration is resolved as well

• In “LINK STATUS CHECK” state the PHY will – Set “forced_mode <= true” to activate the forced mode state machine

– Start autoneg_wait_timer and wait for normal training to finish

– Transition to the “AN GOOD” state directly if link_ststus = ok.

• For PHY capable of both AN and forced mode, the state variable “forced_mode” determines which synchronization approach is active

Page 13: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

AN State Diagram

(Fig. 98-14) cont.

Page 14: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 14 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 14

Conclusion

• Changes to the synchronization state diagrams are needed in

order to improve interoperability (and future backward

compatibility) for 1000BASE-T1 PHY.

• New states added to AN state diagrams Figure 98-14 are all

optional.

• Forced mode state diagram Figure 97-27 shall be replaced with

current proposal.

Page 15: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 15 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 15

Motion

• Adopt the proposed changes shown in document

tu_3bp_0215_xx.pdf for improving interoperability compatibility

between autoneg and forced mode PHY.

Page 16: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 16 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 16

Backup Slides

Simulated SEND_S Detection under Full Duplex

Transmission (from wang_3bp_01_1114.pdf)

Page 17: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 17 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 17

Master SEND_S Detection

• Master MF output during synchronization (without noises):

SEND_S

Detect SEND_S

Symbol time ( x 1.33 ns)

MF

ou

tpu

t

Page 18: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 18 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 18

Slave SEND_S Detection

• Slave MF output during synchronization (without noises):

Slave detect SEND_S

Slave SEND_S

Symbol time ( x 1.33 ns)

MF

ou

tpu

t

Page 19: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 19 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 19

Master NBI Performance

• Master MF output during synchronization (with 0 dB NBI ):

SEND_S

Detect SEND_S

Symbol time ( x 1.33 ns)

MF

ou

tpu

t

Page 20: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 20 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 20

Slave NBI Performance

• Slave MF output during synchronization (with 0 dB NBI ):

detect SEND_S

SEND_S

Symbol time ( x 1.33 ns)

MF

ou

tpu

t

Page 21: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 21 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 21

Master Burst Noise Performance

• Master MF output during synchronization (with 0 dB Burst Noise ):

SEND_S

detect SEND_S

Symbol time ( x 1.33 ns)

MF

ou

tpu

t

Page 22: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 22 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 22

Slave Burst Noise Performance

• Slave MF output during synchronization and coming into HDX training:

Detect SENDS

SEND_S

Symbol time ( x 1.33 ns)

Page 23: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 23 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 23

Master Synchronization

• Master MF output during synchronization and coming into HDX training:

Master SEND_T during HDX training

Symbol time ( x 1.33 ns)

Page 24: Improving Interoperability between Autoneg and Forced Mode …grouper.ieee.org/groups/802/3/bp/public/feb15/tu_3bp_03_0215.pdfTransmission (from wang_3bp_01_1114.pdf) Version 1.0Version

Page 24 IEEE P802.3 Maintenance report – July 2008 Plenary Version 1.0 IEEE 802.3bp Task Force– February, 2015 Version 1.0 Page 24

Slave Synchronization

• Slave MF output during synchronization and coming into HDX training:

Symbol time ( x 1.33 ns)

Slave SEND_Z during HDX training