EasyManua.ls Logo

Lattice Semiconductor CertusPro-NX - Figure 6.12. Link Synchronization FSM; Table 6.6. Example Settings for XAUI and Gige

Default Icon
171 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
CertusPro-NX SerDes/PCS Usage Guide
Preliminary Technical Note
58 © 2020-2021 Lattice Semiconductor FPGA-TN-02245-0.81
All rights reserved. CONFIDENTIAL
NO_SYNC
NO_SYNC_1
SYNC
SYNC_1
!rst_n
syn_code detected
sync_counter == S
good_code received
bad_counter == B
bad code recieved
bad_counter == 0
bad_code recieved
good_code received
any code received
Figure 6.12. Link Synchronization FSM
After reset, Link Synchronization FSM enters the default state: NO_SYNC. In NO_SYNC state, the FSM tries to find the
synchronization code in the input data stream. The FSM assigns 1 to sync_counter, then moves from NO_SYNC state to
NO_SYNC_1 state whenever valid synchronization code is found. Otherwise, the sync_counter, good_counter and
bad_counter are assigned to the default values 0.
In NO_SYNC_1 state, the FSM continue to detect the synchronization code. The sync_counter is added 1 after new
synchronization is detected. The FSM moves from NO_SYNC_1 state to SYNC state when sync_counter equals S (one
configurable parameter). However, the FSM moves back to NO_SYNC state whenever any bad code (invalid code in
8B/10B coding) is detected.
Data stream is aligned successfully in SYNC state. The Auto Aligner module locks the current boundary and avoids
re-alignment. In SYNC state, the FSM monitors continuously if there is any bad code appearing. The bad_counter is
added 1 when bad code is detected, meanwhile the FSM moves from SYNC state to SYNC_1 state.
In SYNC_1 state, the bad_counter is added 1 and the good_counter is cleared whenever any bad code is detected.
Otherwise, the good_counter is added 1 when valid code is received. The bad_counter is minus 1 whenever the
good_counter equals G (one configurable parameter), and meanwhile the good_counter is cleared. The FSM moves
back to SYNC state when bad_counter equals 0, or moves to NO_SYNC state to make a re-alignment request when the
bad_counter equals B (another configurable parameter).
Following parameters are configurable:
Number of valid synchronization code groups or ordered sets received to achieve synchronization (S).
The range of this parameter is 3 to 255.
Number of bad code groups received to lose synchronization (B).
The range of this parameter is 3 to 63.
Number of continuous good code groups received to reduce the error count by one (G).
The range of this parameter is 3 to 255.
Table 6.6 is the example settings about parameter S, B and G for XAUI and GigE protocols.
Table 6.6. Example Settings for XAUI and GigE
GigE
XAUI
S
3
4
B
4
4
G
4
4

Table of Contents

Other manuals for Lattice Semiconductor CertusPro-NX