layer1_adv module
The layer1_adv module offers high-level functions for advanced Layer 1 configurations and operations.
PCSL Skew
|
Get Rx relative skew measured in bits of the specified PCS lanes. |
CDR LOL
|
Get the current and latched CDR LOL status of the specified Serdes. |
PCS Alarms
|
Get the current and latched HI-BER status of the specified port. |
|
Set the HI-SER alarm on or off on the port. |
|
Get the current and latched HI-SER status of the specified port. |
|
Get the current and latched Degraded SER status of the specified port. |
|
Configure signaling Degraded SER thresholds of the port. |
|
Get signaling Degraded SER thresholds of the port. |
Reconc. Sublayer Alarms
|
Get the current and latched Local Fault status of the specified port. |
|
Get the current and latched Remote Fault status of the specified port. |
|
Get the current and latched Local Fault and Remote Fault status of the specified port. |
|
Get the current and latched Link Down status of the specified port. |
Tx/Rx Error Statistics
Get the Rx number of the number of LOA, 256b/257 ITBs, 64b/66b erroneous codewords, link down, local fault, and remote fault events since the last counter clear. |
|
Get the inject (Tx) number of LOA, HI-SER, 256b/257 ITBs, 64b/66b erroneous codewords since the last counter clear. |
|
|
Clear Rx Layer 1 advanced statistics error counters on the port. |
|
Clear Tx Layer 1 advanced statistics error counters on the port. |
PCS Error Injection
|
Inject a 64b/66b codeword error from the port immediately when called. |
|
Inject an invalid 256b/257b transcode block (ITB) from the port immediately when called. |
|
Inject a Loss of Alignment (LOA) event from the port immediately when called. |
|
Inject a High SER (HI-SER) event from the port immediately when called. |
Port Tx/Rx Frequency and PPM (current, min, max)
|
Get the current, minimum, and maximum Tx frequency (Hz) and frequency offset (ppm) of the specified port. |
|
Get the current, minimum, and maximum Rx frequency (Hz) and frequency offset (ppm) of the specified Serdes. |
Port Tx/Rx Frequency (Hz)
If you only want to get frequency parameters, you can use the following functions.
|
Get the current, minimum, and maximum Tx frequency in Hz of the specified port. |
|
Get the current Tx frequency in Hz of the specified port. |
|
Get the minimum Tx frequency in Hz of the specified port. |
|
Get the maximum Tx frequency in Hz of the specified port. |
|
Get the current, minimum, and maximum Rx frequencies in Hz of the specified Serdes. |
|
Get the current Rx frequency in Hz of the specified port. |
|
Get the minimum Rx frequency in Hz since last query of the specified Serdes. |
|
Get the maximum Rx frequency in Hz since last query of the specified Serdes. |
Port Tx/Rx Frequency Offset (PPM)
If you only want to get frequency offset parameters, you can use the following functions.
|
Get the current, minimum, and maximum Tx PPM of the specified port. |
|
Get the current Tx PPM of the specified port. |
|
Get the minimum Tx PPM of the specified port. |
|
Get the maximum Tx PPM of the specified port. |
|
Get the current, minimum, and maximum Rx PPM of the specified Serdes. |
|
Get the current Rx PPM of the specified Serdes. |
|
Get the minimum Rx PPM since last query of the specified Serdes. |
|
Get the maximum Rx PPM since last query of the specified Serdes. |
Port Tx/Rx Data Rate (bps)
|
Get the current, minimum, and maximum Tx datarate in bps of the specified port. |
|
Get the current Tx datarate in bps of the specified port. |
|
Get the minimum Tx datarate in bps since last query. |
|
Get the maximum Tx datarate in bps since last query. |
|
Get the current, minimum, and maximum Rx datarates in bps of the specified Serdes. |
|
Get the current Rx datarate in bps of the specified port. |
|
Get the minimum Rx datarate in bps since last query. |
|
Get the maximum Rx datarate in bps since last query. |
Deprecated Functions
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Module Contents
The Advanced Layer 1 functions
- async get_tx_freq_curr(port)[source]
Get the current Tx frequency in Hz of the specified port.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The current Tx frequency in Hz.
- Return type:
- async get_tx_freq_min(port)[source]
Get the minimum Tx frequency in Hz of the specified port.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The minimum Tx frequency in Hz.
- Return type:
- async get_tx_freq_max(port)[source]
Get the maximum Tx frequency in Hz of the specified port.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The maximum Tx frequency in Hz.
- Return type:
- async get_tx_freq_all(port)[source]
Get the current, minimum, and maximum Tx frequency in Hz of the specified port.
- async get_tx_ppm_curr(port)[source]
Get the current Tx PPM of the specified port.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The current Tx PPM.
- Return type:
- async get_tx_ppm_min(port)[source]
Get the minimum Tx PPM of the specified port.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The minimum Tx PPM.
- Return type:
- async get_tx_ppm_max(port)[source]
Get the maximum Tx PPM of the specified port.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The maximum Tx PPM.
- Return type:
- async get_tx_ppm_all(port)[source]
Get the current, minimum, and maximum Tx PPM of the specified port.
- async get_tx_freq(port)[source]
Get the current, minimum, and maximum Tx frequency (Hz) and frequency offset (ppm) of the specified port.
- async get_rx_freq_curr(port, serdes_indices=[0])[source]
Get the current Rx frequency in Hz of the specified port.
- async get_rx_freq_min(port, serdes_indices=[0])[source]
Get the minimum Rx frequency in Hz since last query of the specified Serdes.
- async get_rx_freq_max(port, serdes_indices=[0])[source]
Get the maximum Rx frequency in Hz since last query of the specified Serdes.
- async get_rx_freq_all(port, serdes_indices=[0])[source]
Get the current, minimum, and maximum Rx frequencies in Hz of the specified Serdes.
The minimum and maximum values are since last query.
- async get_rx_ppm_curr(port, serdes_indices=[0])[source]
Get the current Rx PPM of the specified Serdes.
- async get_rx_ppm_min(port, serdes_indices=[0])[source]
Get the minimum Rx PPM since last query of the specified Serdes.
- async get_rx_ppm_max(port, serdes_indices=[0])[source]
Get the maximum Rx PPM since last query of the specified Serdes.
- async get_rx_ppm_all(port, serdes_indices=[0])[source]
Get the current, minimum, and maximum Rx PPM of the specified Serdes.
The minimum and maximum values are since last query.
- async get_rx_freq(port, serdes_indices=[0])[source]
Get the current, minimum, and maximum Rx frequency (Hz) and frequency offset (ppm) of the specified Serdes.
- async get_tx_datarate_curr(port)[source]
Get the current Tx datarate in bps of the specified port.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The current Tx datarate in bps.
- Return type:
- async get_tx_datarate_min(port)[source]
Get the minimum Tx datarate in bps since last query.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The minimum Tx datarate in bps since last query.
- Return type:
- async get_tx_datarate_max(port)[source]
Get the maximum Tx datarate in bps since last query.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The maximum Tx datarate in bps since last query.
- Return type:
- async get_tx_datarate_all(port)[source]
Get the current, minimum, and maximum Tx datarate in bps of the specified port.
- async get_rx_datarate_curr(port, serdes_indices=[0])[source]
Get the current Rx datarate in bps of the specified port.
- async get_rx_datarate_min(port, serdes_indices=[0])[source]
Get the minimum Rx datarate in bps since last query.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
serdes_indices (List[int]) – The indices of the Serdes.
- Returns:
The minimum Rx datarate in bps since last query. If multiple Serdes indices are provided, a list of minimum datarates is returned.
- Return type:
- async get_rx_datarate_max(port, serdes_indices=[0])[source]
Get the maximum Rx datarate in bps since last query.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
serdes_indices (List[int]) – The indices of the Serdes.
- Returns:
The maximum Rx datarate in bps since last query. If multiple Serdes indices are provided, a list of maximum datarates is returned.
- Return type:
- async get_rx_datarate_all(port, serdes_indices=[0])[source]
Get the current, minimum, and maximum Rx datarates in bps of the specified Serdes.
The minimum and maximum values are since last query.
- async get_cdr_lol_status(port, serdes_indices)[source]
Get the current and latched CDR LOL status of the specified Serdes.
True means error condition is present, while False means error condition is not present.
- async get_rx_pcsl_skew(port, lane_indices)[source]
Get Rx relative skew measured in bits of the specified PCS lanes.
- async get_hi_ber_status(port)[source]
Get the current and latched HI-BER status of the specified port.
True means error condition is present, while False means error condition is not present.
- async get_hi_ser_status(port)[source]
Get the current and latched HI-SER status of the specified port.
True means error condition is present, while False means error condition is not present.
HI-SER is signalled if 5560 RS-FEC symbol errors are detected in contiguous block of 8192 non-overlapping RS-FEC codewords.
- async get_deg_ser_status(port)[source]
Get the current and latched Degraded SER status of the specified port.
True means error condition is present, while False means error condition is not present.
The thresholds for signaling Degraded SER is programmable using
set_deg_ser_thresholds().
- async set_deg_ser_thresholds(port, activate_threshold, deactivate_threshold, interval)[source]
Configure signaling Degraded SER thresholds of the port.
If more than activate_threshold number of RS-FEC symbol errors are detected in a contiguous block of interval RS-FEC codewords, Degraded SER is signalled on the port.
If less than deactivate_threshold number of RS-FEC symbol errors are detected in a contiguous block of interval RS-FEC codewords, Degraded SER is no longer signalled on the port.
interval must be an even number and a multiple of the number of PCS flows:
100G: 2 (one flow, but must be even)
200G/400G: 2 (two flows)
800G/1.6T: 4 (four flows)
An uncorrectable codeword is counted as 16 erroneous RS-FEC symbols.
- async get_lf_status(port)[source]
Get the current and latched Local Fault status of the specified port.
True means error condition is present, while False means error condition is not present.
- async get_rf_status(port)[source]
Get the current and latched Remote Fault status of the specified port.
True means error condition is present, while False means error condition is not present.
- async get_lf_rf_status(port)[source]
Get the current and latched Local Fault and Remote Fault status of the specified port.
True means error condition is present, while False means error condition is not present.
- async get_link_down_status(port)[source]
Get the current and latched Link Down status of the specified port.
True means error condition is present, while False means error condition is not present.
- async get_rx_errors_since_clear(port)[source]
Get the Rx number of the number of LOA, 256b/257 ITBs, 64b/66b erroneous codewords, link down, local fault, and remote fault events since the last counter clear.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
A tuple containing the received number of LOA, 256b/257 ITBs, 64b/66b erroneous codewords, link down, local fault, and remote fault events, since the last counter clear per port.
- Return type:
- async get_tx_errors_since_clear(port)[source]
Get the inject (Tx) number of LOA, HI-SER, 256b/257 ITBs, 64b/66b erroneous codewords since the last counter clear.
- async inject_errcwd_once(port)[source]
Inject a 64b/66b codeword error from the port immediately when called.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- async inject_itb_once(port)[source]
Inject an invalid 256b/257b transcode block (ITB) from the port immediately when called.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- async inject_loa_once(port)[source]
Inject a Loss of Alignment (LOA) event from the port immediately when called.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- async inject_hi_ser_once(port)[source]
Inject a High SER (HI-SER) event from the port immediately when called.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- async set_hi_ser_alarm(port, on)[source]
Set the HI-SER alarm on or off on the port.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
on – Set to True to enable the HI-SER alarm, or False to disable the HI-SER alarm.
- async clear_rx_err_cnt(port)[source]
Clear Rx Layer 1 advanced statistics error counters on the port.
- async clear_tx_err_cnt(port)[source]
Clear Tx Layer 1 advanced statistics error counters on the port.
- async get_cdr_lol(port, serdes_indices)[source]
get_cdr_lol()is deprecated and will be removed in a future release. Please useget_cdr_lol_status()instead.Deprecated since version 1.8.
Get the current and latched CDR LOL status of the specified Serdes.
True means error condition is present, while False means error condition is not present.
- async get_rx_lane_skew(port, lane_indices)[source]
get_rx_lane_skew()is deprecated and will be removed in a future release. Please useget_rx_pcsl_skew()instead.Deprecated since version 1.8.
Get Rx relative skew measured in bits of the specified PCS lanes.
- async get_hi_ber(port)[source]
get_hi_ber()is deprecated and will be removed in a future release. Please useget_hi_ber_status()instead.Deprecated since version 1.8.
Get the current and latched HI-BER status of the specified port.
True means error condition is present, while False means error condition is not present.
- async get_hi_ser(port)[source]
get_hi_ser()is deprecated and will be removed in a future release. Please useget_hi_ser_status()instead.Deprecated since version 1.8.
Get the current and latched HI-SER status of the specified port. True means error condition is present, while False means error condition is not present. HI-SER is signalled if 5560 RS-FEC symbol errors are detected in contiguous block of 8192 non-overlapping RS-FEC codewords.
- async get_deg_ser(port)[source]
get_deg_ser()is deprecated and will be removed in a future release. Please useget_deg_ser_status()instead.Deprecated since version 1.8.
Get the current and latched DEG-SER status of the specified port. True means error condition is present, while False means error condition is not present.
- async set_cw_err(port)[source]
set_cw_err()is deprecated and will be removed in a future release. Please useinject_errcwd_once()instead.Deprecated since version 1.8.
Inject a 64b/66b codeword error from the port immediately when called.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort) – The port instance.
- async set_itb(port)[source]
set_itb()is deprecated and will be removed in a future release. Please useinject_itb_once()instead.Deprecated since version 1.8.
Inject an invalid 256b/257b transcode block (ITB) from the port immediately when called.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- async get_cw_err_since_last(port)[source]
get_cw_err_since_last()is deprecated and will be removed in a future release. Please useget_rx_errors_since_clear()instead.Deprecated since version 1.8.
Get the number of 64b/66b erroneous codewords received since last counter clear.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The number of 64b/66b erroneous codewords received since last counter clear.
- Return type:
- async get_itb_since_last(port)[source]
get_itb_since_last()is deprecated and will be removed in a future release. Please useget_rx_errors_since_clear()instead.Deprecated since version 1.8.
Get the number of 256b/257 ITBs received since last counter clear.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The number of 256b/257 ITBs received since last counter clear.
- Return type:
- async get_total_loa_since_last(port)[source]
get_total_loa_since_last()is deprecated and will be removed in a future release. Please useget_rx_errors_since_clear()instead.Deprecated since version 1.8.
Get the number of LOA events received since last counter clear.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The number of LOA events received since last counter clear.
- Return type:
- async get_link_down_since_last(port)[source]
get_link_down_since_last()is deprecated and will be removed in a future release. Please useget_rx_errors_since_clear()instead.Deprecated since version 1.8.
Get the number of link down events received since last counter clear.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The number of link down events received since last counter clear.
- Return type:
- async get_local_fault_since_last(port)[source]
get_local_fault_since_last()is deprecated and will be removed in a future release. Please useget_rx_errors_since_clear()instead.Deprecated since version 1.8.
Get the number of local fault events received since last counter clear.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The number of local fault events received since last counter clear.
- Return type:
- async get_remote_fault_since_last(port)[source]
get_remote_fault_since_last()is deprecated and will be removed in a future release. Please useget_rx_errors_since_clear()instead.Deprecated since version 1.8.
Get the number of remote fault events received since last counter clear.
- Parameters:
port (Union[Z800FreyaPort, Z1600EdunPort]) – The port instance.
- Returns:
The number of remote fault events received since last counter clear.
- Return type: