F-tile Architecture and PMA and FEC Direct PHY IP User Guide

ID 683872
Date 1/25/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

3.12. Configurable Intel® Quartus® Prime Software Settings

You can configure the FHT and FGT PMAs using the Intel® Quartus® Prime software settings file. (.qsf)

You can specify values for the following HSSI parameters in the Intel® Quartus® Prime settings file (.qsf) to configure the FHT and FGT PMAs:

FHT PMA

RX invert P and N: To swap RX P and N serial lanes.

set_instance_assignment -name HSSI_PARAMETER "rx_invert_p_and_n=<parameter_value>" -to <RX_SERIAL_PIN> -entity <TOP_LEVEL_NAME>

Example:

set_instance_assignment -name HSSI_PARAMETER "rx_invert_p_and_n=RX_INVERT_PN_EN" -to rx_serial_data[0] -entity top

RX termination: This setting is for all lanes.

set_instance_assignment -name HSSI_PARAMETER "rx_termination=<parameter_value>" -to <RX_SERIAL_PIN> -entity <TOP_LEVEL_NAME>
Possible parameter values are:
  • RXTERM_OFFSET_P0 (90 Ohms)
  • RXTERM_OFFSET_P2 (94.6 Ohms)
  • RXTERM_OFFSET_P3 (97.7 Ohms)
  • RXTERM_OFFSET_P4 (100 Ohms)
  • RXTERM_OFFSET_P5 (102.3 Ohms)
  • RXTERM_OFFSET_P6 (105.4 Ohms)
  • RXTERM_OFFSET_P7 (107.7 Ohms)
  • RXTERM_OFFSET_P8 (110 Ohms)
  • RXTERM_OFFSET_M4 (80.8 Ohms)
  • RXTERM_OFFSET_M5 (83.1 Ohms)
  • RXTERM_OFFSET_M6 (85.4 Ohms)
  • RXTERM_OFFSET_M7 (87.7 Ohms)

Example:

set_instance_assignment -name HSSI_PARAMETER "rx_termination=RXTERM_OFFSET_P0" -to rx_serial_data[0] -entity top

TX invert P and N: To swap TX P and N serial lanes.

set_instance_assignment -name HSSI_PARAMETER "tx_invert_p_and_n=<parameter_value>" -to <TX_SERIAL_PIN> -entity <TOP_LEVEL_NAME>

Example:

set_instance_assignment -name HSSI_PARAMETER "tx_invert_p_and_n=TX_INVERT_PN_DIS" -to tx_serial_data[0] -entity top

TX termination: This setting is for all lanes.

set_instance_assignment -name HSSI_PARAMETER "tx_termination=<TXTERM_OFFSET_NAME>" -to <TX_SERIAL_PIN> -entity <TOP_LEVEL_NAME>
Possible parameter values are:
  • TXTERM_OFFSET_M1(96.8 Ohms)
  • TXTERM_OFFSET_P0(90 Ohms)

Example:

set_instance_assignment -name HSSI_PARAMETER "tx_termination=TXTERM_OFFSET_P0" -to tx_serial_data[0] -entity top

TX out tristate enable: Tx driver tristate enable.

set_instance_assignment -name HSSI_PARAMETER "txout_tristate_en=<parameter_value>" -to <TX_SERIAL_PIN> -entity <TOP_LEVEL_NAME>

Example:

set_instance_assignment -name HSSI_PARAMETER "txout_tristate_en=TXOUT_TRISTATE_EN" -to tx_serial_data[0] -entity top

TX equalization:

Post tap: Valid register settings for the parameter value are 0-63

set_instance_assignment -name HSSI_PARAMETER "txeq_post_tap_<n>=<parameter_value>" -to <TX_SERIAL_PIN> -entity <TOP_LEVEL_NAME>

Pre tap: Valid register settings for the parameter value are 0-63

set_instance_assignment -name HSSI_PARAMETER "txeq_pre_tap_<n>=<parameter_value>" -to <TX_SERIAL_PIN> -entity <TOP_LEVEL_NAME>

Main tap: Valid register settings for the parameter value are 0-127

set_instance_assignment -name HSSI_PARAMETER "txeq_main_tap=<parameter_value>" -to <TX_SERIAL_PIN> -entity <TOP_LEVEL_NAME>

Example:

Post tap:

set_instance_assignment -name HSSI_PARAMETER "txeq_post_tap_1=0" -to tx_serial_data[0] -entity top
set_instance_assignment -name HSSI_PARAMETER "txeq_post_tap_2=0" -to tx_serial_data[0] -entity top
set_instance_assignment -name HSSI_PARAMETER "txeq_post_tap_3=0" -to tx_serial_data[0] -entity top
set_instance_assignment -name HSSI_PARAMETER "txeq_post_tap_4=0" -to tx_serial_data[0] -entity top

Pre tap:

set_instance_assignment -name HSSI_PARAMETER "txeq_pre_tap_3=0" -to tx_serial_data[0] -entity top
set_instance_assignment -name HSSI_PARAMETER "txeq_pre_tap_2=0" -to tx_serial_data[0] -entity top
set_instance_assignment -name HSSI_PARAMETER "txeq_pre_tap_1=0" -to tx_serial_data[0] -entity top

Main tap:

set_instance_assignment -name HSSI_PARAMETER "txeq_main_tap=83" -to tx_serial_data[0] -entity top

FGT PMA

RX on-chip termination:

set_instance_assignment -name HSSI_PARAMETER "rx_onchip_termination=<parameter_value>" -to <RX_SERIAL_PIN> -entity <TOP_LEVEL_NAME>

Example:

set_instance_assignment -name HSSI_PARAMETER "rx_onchip_termination=RX_ONCHIP_TERMINATION_R_2" -to rx_serial_data[0] -entity top
Possible parameter values are:
  • RX_ONCHIP_TERMINATION_R_1 : 85 Ohms.
  • RX_ONCHIP_TERMINATION_R_2 : 100 Ohms.

RX AC coupling:

set_instance_assignment -name HSSI_PARAMETER "rx_ac_couple_enable=<parameter_value>" -to <RX_SERIAL_PIN>  -entity <TOP_LEVEL_NAME>

Example:

set_instance_assignment -name HSSI_PARAMETER "rx_ac_couple_enable=ENABLE" -to rx_serial_data[0] -entity top

Parameter value ENABLE : when you use on board AC coupling capacitors.

TX Equalization:

set_instance_assignment -name HSSI_PARAMETER "txeq=<parameter_value>" -to <TX_SERIAL_PIN> -entity <TOP_LEVEL_NAME>

Examples:

set_instance_assignment -name HSSI_PARAMETER "txeq_main_tap=35" -to tx_serial_data -entity top
set_instance_assignment -name HSSI_PARAMETER "txeq_pre_tap_1=0" -to tx_serial_data -entity top
set_instance_assignment -name HSSI_PARAMETER "txeq_pre_tap_2=0" -to tx_serial_data -entity top
set_instance_assignment -name HSSI_PARAMETER "txeq_post_tap_1=5" -to tx_serial_data -entity top

To bypass RX auto adaptation, you can use the following assignments:

set_instance_assignment -name HSSI_PARAMETER "flux_mode=FLUX_MODE_BYPASS" -to rx_serial_data -entity top
set_instance_assignment -name HSSI_PARAMETER "flux_mode=FLUX_MODE_BYPASS" -to tx_serial_data -entity top
set_instance_assignment -name HSSI_PARAMETER "rx_adapt_mode=RX_ADAPT_MODE_STATIC_EQ" -to rx_serial_data -entity top
set_instance_assignment -name HSSI_PARAMETER "engineered_link_mode=ENABLE" -to rx_serial_data -entity top
set_instance_assignment -name HSSI_PARAMETER "engineered_link_mode=ENABLE" -to tx_serial_data -entity top