Recovery
The general pattern for a Recovery
would look like:
- Enter
Recovery
by sendingTS1
: also fill the fields in theTS1
to indicate the reason and details to enterRecovery
(e.g.speed_change
ot not?autonomous_change
or not?) Recovery.RecvrLock
: achieve bit lock and symbol lock by exchanging TS1.Recovery.RecvrCfg
: the actual stage where meaningful communication happens. Negotiate what both sides would like to do by exchanging TS2.- Once both the agreement is reached, switch to the next state and starting doing that.
References
Links
- p28, Troubleshooting PCI Express® Link Training and Protocol Issues: the Recovery state machine.
- PCI Express* 3.0 Technology: PHY Implementation Considerations for Intel Platforms: as old as it might look, this is one of the very few sources that actually mentioned 128b/130b encoding and the role of 128b/130b TS1/TS2 in speed change.
Specification
- 4.2.6.4 Recovery