L- and H-Tile Transceiver PHY User Guide

ID 683621
Date 12/13/2024
Public
Document Table of Contents

2.8. Implementing the Transceiver Native PHY Layer in L-Tile/H-Tile Revision History

Document Version Changes
2024.12.13 Corrected the register bit in step 4. from 0x156[2] to 0x156[1] in the Scanning the Horizontal and Vertical Phases section.
2024.01.30 Made the following changes:
  • Changed rx_set_lockedtoref to rx_set_locktoref in RX PMA Optional Ports table.
  • Changed rx_set_lockedtodata to rx_set_locktodata in RX PMA Optional Ports table.
2023.10.05 Added note about how to tie tx_err_ins port for non-Interlaken modes in the Enhanced PCS Parameters, Enhanced PCS Ports, and Enhanced PCS TX and RX Control Ports sections.
2023.02.20 Added note about the simulation model compilation in the How to Use the Simulation Library Compiler section.
2023.02.01 Added note for rx_pma_clkslip in RX PMA Ports table in PMA, Calibration, and Reset Ports section.
2022.03.28
  • Added note to TX Analog PMA Settings Options table that the Stratix® 10 L-Tile/H-Tile Pre-emphasis and Output Swing Estimator tool is only supported for ES devices.
  • Updated PCS-Core Interface Parameters table with Enable TX Data Valid Gen manual setting parameter.
  • Updated Preserving ODI performance section with Quartus® Prime software qsf settings to preserve ODI performance.
  • Modified Using RX in Adaptive Mode section to check rx_analogreset_stat is asserted before starting adaptation.
2021.12.13
  • Updated Analog PMA Settings Parameters section with Start PMA DFE adaptation auto feature.
  • Updated RX Analog PMA Settings Options table with Start PMA DFE adaptation auto parameter.
  • Updated Enable rx_std_signaldetect port parameter description to support only PCI Express, SATA and SAS protocol modes in Bit Reversal and Polarity Inversion table.
  • Updated rx_std_signaldetect[<n>-1:0] port description to support only PCI Express, SATA and SAS protocol modes in RX PMA Ports table.
2021.10.04
  • Updated the value for the RX On-chip Termination parameter in the RX Analog PMA Settings Options table.
  • Added note to the PCIe Ports table in the Standard PCS Parameters section.
2021.09.09
  • Added new topic: Preserving ODI Performance
  • Updated the step and added a note in the How to Disable ODI section.
  • Added footnote for ×16 PIPE configuration in the Logical PCS Master Channel for PIPE Configuration when the AUTO Selection is Enabled table.
  • Added the following diagrams for Stratix® 10 GX 10M devices:
    • x2 Configuration (for Stratix® 10 GX 10M Devices)
    • x4 Configuration (for Stratix® 10 GX 10M Devices)
    • x8 Configuration (for Stratix® 10 GX 10M Devices)
  • Updated the steps to preserve the performance of the channel during idle state in the Unused or Idle Transceiver Channels section.
  • Removed references to the NCSim simulator.
2021.06.10
  • Updated the Gen3 PIPE value for the Number of TX PLL clock inputs per channel parameter in the TX PMA Options table.
  • Updated the Gen3 PIPE value for the PCI Express Gen3 rate match FIFO mode parameter in the Standard PCS Options table.
  • Updated the Gen3 PIPE values for the TX FIFO partially full threshold and RX FIFO partially full threshold parameters in the PCS-Core Interface Options table.
2021.03.29
  • Updated the PCS-Core Interface Parameters table.
    • Added osc_transfer_en port for the Enable PCS reset status ports parameter.
    • Added descriptions for the output ports for the Enable PCS reset status ports parameter.
  • Updated description for Selected tx_clkout clock source parameter in the TX Clock Options table.
  • Added a note and updated the value for the RX On-chip Termination parameter in the RX Analog PMA Settings Options table.
  • Updated the steps when the RX adaptation mode is set to manual in the How to Enable ODI and How to Disable ODI sections.
  • Corrected the Parallel Clock frequency in the Transceiver Channel Datapath and Clocking for 10GBASE-R (PCS-PMA Interface Width = 32 Bits) diagram.
  • Updated the MCGB input clock frequency parameter value for Gen3 PIPE mode in the ATX PLL Parameters for PCIe PIPE Gen1, Gen2, and Gen3 Modes table.

2020.12.02

Made the following changes to Analog PMA Settings Parameters:
  • Added instructions on how to verify that the .qsf assignments are recognized by the Quartus® Prime Pro Edition Assignment Editor.
  • For Output Swing Level (VOD), changed TX_VOD_NO_JITCOMP_DC_L0 to powerdown_tx_vod_no_jitcomp.
  • For Output Swing Level (VOD), add a note:
    Note: For powerdown_tx_vod_no_jitcomp, if the reference clock is paused or not available during operation, both TX buffer positive and negative pins are equal to the TX output common mode voltage (VOCM). For the VOCM value, refer to the Stratix® 10 Device Data Sheet.
  • For High Speed Compensation, clarified that disable is only for PCIe* Gen1 and Gen2 mode. Refer to the "Parameters for the Native PHY IP Core in PIPE Gen1, Gen2, Gen3 Modes - Analog PMA Settings" table for details.
2020.10.22 Made the following change:
  • Identified the rx_std_wa_patternalign port in two figures as an input (it was previously identified incorrectly as an output).
2020.10.05 Made the following changes:
  • Clarified that the square wave generator is available in 64-bit PCS-PMA data widths only.
  • Clarified that, when using even gear ratios in RX Core FIFO basic mode, you must use the rx_data_valid signal.
2020.03.03 Made the following changes:
  • Updated the following figures to make it clear that rx_clkout is driven by CDR.
    • FIFO Latency Calculation
    • Transceiver Channel Datapath for PIPE Gen1/Gen2 Configurations
    • Transceiver Channel Datapath for PIPE Gen1/Gen2/Gen3 Configurations
    • PCIe* Reverse Parallel Loopback Mode Datapath
    • Transceiver Channel Datapath and Clocking for Interlaken
    • Transceiver Channel Datapath and Clocking for 10GBASE-R (PCS-PMA Interface Width = 32 Bits)
    • Transceiver Channel Datapath and Clocking for 10GBASE-R with IEEE 1588v2 (PCS-PMA Interface Width = 32 Bits)
    • Transceiver Channel Datapath and Clocking for 10GBASE-R with KR FEC (PCSPMA interface width = 64 bits)
    • Transceiver Channel Datapath and Clocking for 40GBASE-R with KR FEC (PCSPMA interface width = 64 bits)
    • Transceiver Channel Datapath and Clocking for CPRI using the Standard PCS
    • Transceiver Channel Datapath and Clocking for CPRI using the Enhanced PCS
  • Clarified ODI support for L-Tile.
  • Updated Unused or Idle Transceiver Channels.
2020.01.29 Made the following change:
  • Added "Implements in core logic" to the "Encoding Scheme" column in CPRI Line Rate Revisions and changed the PCS column from “Enhanced PCS” to “PCS Direct.”
2019.10.02 Made the following changes:
  • For TX Core Interface FIFO Mode > Register and RX PCS-Core Interface FIFO Mode > Register, added the restriction that "This mode is limited to PCS Direct with interface widths of 40 bits or less."
  • Added the Enable PIPE EIOS RX protection parameter in the "General, Common PMA Options, and Datapath Options" table.
2019.06.07 Made the following changes:
  • Added two parameters to the Pre-Emphasis First Pre-Tap Polarity setting in Analog PMA Settings Parameters.
  • Added clarification about the polarity inversion support differences between Standard and Enhanced PCS to Polarity Inversion.
2019.03.22 Made the following changes:
  • Added assignments for "Output Swing Level (VOD)" and "Pre-Emphasis First Post-Tap Polarity."
  • Updated How to Enable ODI, Scanning the Horizontal Eye Opening, Scanning the Horizontal and Vertical Phases, and How to Disable ODI.
2018.10.23 Made the following change:
  • Changed rx_enh_data_valid in the "RX PCS-Core Interface FIFO" table to an output.
2018.10.05 Made the following changes:
  • Changed the pin requirements for OSC_CLK_1 in the "Unused or Idle Transceiver Channels" section.
  • Changed the FIFO mode from Register to Phase Compensation in the "Transceiver Channel Datapath and Clocking for 10GBASE-R with IEEE 1588v2 (PCS-PMA Interface Width = 32 Bits)" figure.
  • Changed the critical warning messages in the "Unused or Idle Transceiver Channels" section.
  • Added note to the "Simulating the Native PHY IP Core" section.
  • Changed the direction of the rx_word_marking_bit port in the "RX PCS-Core Interface Ports: Parallel Data, Control, and Clocks" table.
  • Changed the preset coefficients recommendation in the "Preset Mappings to TX De-emphasis" section.
  • Changed the preset coefficients recommendation in the "Link Equalization for Gen3" section.
  • Changed the 10GBASE-R configuration description in the "Enhanced PCS FIFO Operation" section.
2018.07.06 Made the following changes:
  • Clarified the values for the Slew Rate Control parameter in the "TX Analog PMA Settings Options" table.
  • Clarified the attribute values for slew rate in the "Transmitter QSF Assignment Attributes" table.
  • Removed the note about the rx_std_wa_patternalign port from the "Word Aligner Synchronous State Machine Mode" section.
  • Changed the "Transceiver Channel Datapath and Clocking for 10GBASE-R with IEEE 1588v2 (PCS-PMA Interface Width = 32 Bits)" figure.
  • Clarified the requirements for rx_fifo_align_clr duration in the "RX Multi-lane FIFO Deskew State Machine" section.
  • Clarified the requirement for rx_fifo_align_clr duration on exit from reset in the "State Flow of the RX FIFO Deskew" figure.
  • Changed the description of rx_std_byterev_ena[<n>-1:0] in the "Bit Reversal and Polarity Inversion" table.
  • Added a note about designing with the Use default TX PMA analog settings and Use default RX PMA analog settings options as a starting point in the "Analog PMA Settings Parameters" section.
  • Added further description of the Provide sample QSF assignments in the "Sample QSF Assignment Option" table.
  • Changed the PCS-PMA width to 32 in the "Transceiver Channel Datapath and Clocking for 10GBASE-R (PCS-PMA Interface Width = 32 Bits)" figure.
  • Changed the command to disable the warning message for unused transceiver channels in the "Unused or Idle Transceiver Channels" section.
  • Added QSF syntax examples for most of the parameters in the "TX Analog PMA Settings Options" table.
  • Added QSF syntax examples for most of the parameters in the "RX Analog PMA Settings Options" table.
  • Changed the data rate ranges and register settings in the "ODI Bandwidth Settings" table.
  • Changed Scanning the Horizontal Eye Opening.
  • Changed Scanning the Horizontal and Vertical Phases.
  • Added a footnote to the code_violation_status signal in the "Simplified Data Interface=Disabled, Double-Rate Transfer=Enabled" table.
  • Updated the critical warning message in the "Unused or Idle Transceiver Channels" section.
  • Added clarification about the adaptation engine in the "Using RX in Adaptive Mode" section.
  • Added ODI support on L-Tile devices in the "On-die Instrumentation" section.
  • Changed the base data rate for the 12165.12 Mbps data rate in the "Recommended Base Data Rates and Clock Generation Blocks for Available Data Rates" table.
  • Added an example to the per-pin .qsf assignment instruction in the "Unused or Idle Transceiver Channels" section.
2018.03.16 Made the following changes:
  • Changed the functionality and description ofrx_control bit [9:8] to "Unused" in the "Bit Encodings for Basic (Enhanced PCS) with 66-bit word, Basic with KR FEC, 40GBASE-R with KR FEC" table.
  • Added steps 5, 6, and 12 in the "How to Implement Double Rate Transfer Mode" section.
  • Changed the following figures in the "RX Bitslip" section:
    • "RX Bitslip in 8-bit Mode"
    • "RX Bitslip in 10-bit Mode"
    • "RX Bitslip in 16-bit Mode"
    • "RX Bitslip in 20-bit Mode"
  • Changed the following figure in the "Word Aligner Manual Mode" section:
    • "Manual Mode when the PCS-PMA Interface Width is 8 Bits"
  • Added details about how to enable the transceiver toolkit capability in the "Dynamic Reconfiguration Parameters" section.
  • Added the Enable tx_coreclkin2 port parameter to the "PCS-Core Interface Parameters" table.
  • Added the RX PMA analog mode rules parameter to the "Analog PMA Settings" table.
  • Removed the "Manual Mode when the PCS-PMA Interface Width is 10 Bits" figure.
  • Removed the "Manual Mode when the PCS-PMA Interface Width is 16 Bits" figure.
  • Removed the "Manual Mode when the PCS-PMA Interface Width is 20 Bits" figure.
  • Changed the "Synchronization State Machine Mode when the PCS-PMA Interface Width is 20 Bits" figure.
  • Removed the "Word Aligner in Deterministic Latency Mode Waveform" figure.
  • Removed the "High BER" figure.
  • Removed the "Block Lock Assertion" figure.
  • Changed the "Idle Ordered-Set Generation Example" figure.
  • Changed the "RX Polarity Inversion" figure.
  • Changed the following figures in the "RX Data Bitslip" section:
    • "RX Bitslip in 8-bit Mode"
    • "RX Bitslip in 10-bit Mode"
    • "RX Bitslip in 16-bit Mode"
    • "RX Bitslip in 20-bit Mode"
  • Changed the "TX Bit Reversal" figure.
  • Changed the "RX Bit Reversal" figure.
  • Changed the "TX Byte Reversal" figure.
  • Changed the "RX Byte Reversal" figure.
  • Updated the value of the Output Swing Level (VOD) parameter in the "TX Analog PMA Settings Options" table.
  • Changed the descriptions for the following parameters in the "RX Analog PMA Settings Options" table:
    • CTLE AC Gain
    • CTLE EQ Gain
    • VGA DC Gain
  • Added clarification about ways to configure TX PMA settings in the "TX PMA Use Model" section.
  • Added clarification about ways to select your CTLE gain value in the "Manual Mode" section.
  • Defined the SKP symbol and added a note describing why it is used in the "Gen1 and Gen2 Clock Compensation" section.
  • Changed the values or added descriptions for the following parameters in the "TX Analog PMA Settings Options" table:
    • Output Swing Level (VOD)
    • Pre-Emphasis First Pre-Tap Polarity
    • Pre-Emphasis First Pre-Tap Magnitude
    • Pre-Emphasis First Post -Tap Polarity
    • Pre-Emphasis First Post -Tap Magnitude
    • On-Chip Termination
    • Slew Rate Control
  • Changed the values or added descriptions for the following parameters in the "RX Analog PMA Settings Options" table:
    • RX On-chip Termination
    • CTLE AC Gain
    • CTLE EQ Gain
    • VGA DC Gain
  • Changed the "Synchronization State Machine Mode when the PCS-PMA Interface Width is 16 Bits" figure.
  • Changed the "Word Aligner in Deterministic Latency Mode 16 Bits Waveform" figure.
  • Changed the following figures in the TX Data Bit Slip section:
    • TX Bitslip in 8-bit Mode
    • TX Bitslip in 10-bit Mode
    • TX Bitslip in 16-bit Mode
    • TX Bitslip in 20-bit Mode
  • Changed the "Idle Oredered-Set Generation Example" figure.
  • Changed the polarity inversion mode selections in the "RX Data Polarity Inversion" section.
  • Changed the bit reversal mode selections in the "Transmitter Bit Reversal" section.
  • Changed the bit reversal mode selections in the "Receiver Bit Reversal" section.
  • Changed the byte reversal mode selections in the "Receiver Byte Reversal" section.
  • Changed the byte reversal mode selections in the "Transmitter Byte Reversal" section.
  • Changed the note in the "Debug Functions" section.
  • Changed the note in the "On-die Instrumentation" section.
  • Added further description to the rx_set_locktoref[<n>-1:0] and rx_set_locktoref[<n>-1:0] ports in the "RX PMA Ports" table.
  • Added a note to the "Transceiver PHY PCS-to-Core Interface Reference Port Mapping" section.
  • Added description for how to enable/disable serial loopback in the "Enabling and Disabling Loopback" section.
  • Changed the list of restrictions for placing channels for PIPE configurations in the "How to Place Channels for PIPE Configurations" section.
  • Changed the name of the Rate Match modes in the "Clock Compensation Using the Standard PCS" section.
  • Added a sentence for "Enable TX bit/byte reversal" parameter: "TX bit/byte reversal ports are not available but can be changed via soft registers. RX bit reversal ports are available."
  • Added "rx_syncstatus is bus dependent on the width of the parallel data. For example, when the parallel data width is 32 bits, then rx_syncstatus is a 4 bit bus. The final expected value is 1'hf, indicating the control character is identified at the correct location in the 32 bit parallel word." to the "rx_syncstatus[<n><w>/<s>-1:0]".
  • Added "The 2 alignment markers valid status is captured in the 2 bit of rx_std_wa_ala2size signal. When both the markers are matched, then the value of the signal is 2'b11." to "rx_std_wa_a1a2size[<n>-1:0]".
  • Added the "Timing Closure Recommendations" section.
  • Added the two available PIPE refclk assignment settings to "Native PHY IP Core Parameter Settings for PIPE."
2017.08.11 Made the following changes:
  • Added link to the PCIe solutions guidelines in the "Configuring the Native PHY IP Core" section.
  • Added details about the number of GXT channels supported per tile in the "GXT Channels" section.
  • Changed the description for the Enable rx_pma_clkslip port parameter in the "RX PMA Optional Ports" table.
  • Added units of measure to the RX On-chip Termination parameter values in the "RX Analog PMA Settings Options" table.
  • Added descriptions for the following parameters in the "KR-FEC Parameters" table:
    • Enable tx_enh_frame port
    • Enable rx_enh_frame port
    • Enable rx_enh_frame_diag_status port
  • Added further description to the PCI Express Gen3 rate match FIFO mode parameter in the "Rate Match FIFO Parameters" table.
  • Changed the description of the Share reconfiguration interface parameter in the "Dynamic Reconfiguration" table.
  • Changed the direction and updated the description of the rx_pma_clkslip signal in the "RX PMA Ports" table.
  • Changed the clock domains of the following signals in the "TX PCS-Core Interface FIFO" table:
    • tx_fifo_empty[<n>-1:0]
    • tx_fifo_pempty[<n>-1:0]
    • rx_fifo_full[<n>-1:0]
    • rx_fifo_pfull[<n>-1:0]
  • Added the "Calculating Latency through the Word Aligner" section.
  • Added the "CPRI Line Rate Revisions" table.
  • Changed the "Transceiver Channel Datapath and Clocking for CPRI using the Standard PCS" figure.
  • Added the "Clock Frequencies for Various CPRI Data Rates using the Standard PCS" table.
  • Added the "Transceiver Channel Datapath and Clocking for CPRI using the Enhanced PCS" figure.
  • Added the "Clock Frequencies for Various CPRI Data Rates using the Enhanced PCS" table.
  • Added the "FIFO Latency Calculation" section.
  • Added the CPRI chapter.
  • Updated the descriptions for the Enable rx_fifo_pfull port and Enable rx_fifo_pempty port parameters in the " PCS-Core Interface Parameters" table.
  • Added descriptions for the CTLE AC Gain, CTLE EQ Gain, and VGA DC Gain parameters in the "RX Analog PMA Settings Options" table.
  • Updated the descriptions for the tx_fifo_pfull[<n>-1:0] and tx_fifo_pempty[<n>-1:0] ports in the "TX PCS-Core Interface FIFO" table.
  • Added the PCIe Adaptive Mode column to and changed the bit settings for adp_dc_ctle_mode_sel, adp_dc_ctle_mode0_win_start, adp_dc_ctle_onetime, and adp_vga_ctle_low_limit in the "RX Adaption Mode Attributes" table.
  • Changed the footnote in the "Register Chain Minimum Hold Time Calculations" table.
  • Completely restructured the table in and added supporting text to the "Transceiver to FPGA Fabric Transfer" section.
  • Changed the description of the Share reconfiguration interface parameter in the "Dynamic Reconfiguration" table.
2017.06.06 Made the following changes:
  • Removed QPI options from the "TX PMA Options" table.
  • Added the "PMA Functions" section.
  • Added the "Debug Functions" section.
  • Removed the Enable feedback compensation bonding parameter from the "fPLL IP Core Parameter Settings for PIPE" section.
  • Removed the Enable feedback compensation bonding parameter from the "ATX PLL IP Core Parameter Settings for PIPE" section.
  • Changed the parameter name, Store current configuration to profile, to match the GUI in the "Configuration Profiles" table.
  • Changed the figures in the "How to Connect TX PLLs for PIPE Gen1, Gen2, and Gen3 Modes" section.
  • Added the "Standard PCS Options" table.
  • Changed the logical PCS master channel number for the x1 PIPE configuration in the "Logical PCS Master Channel for PIPE Configuration" table.
  • Changed the values for Pre-Emphasis First Pre-Tap Magnitude and Pre-Emphasis First Post -Tap Magnitude in the "TX Analog PMA Settings Options" table.
  • Updated some parameters and descriptions in the "General, Common PMA Options, and Datapath Options" table.
  • Removed the Selected TX PCS bonding clock network parameter from the "TX Clock Options" table.
  • Removed the VGA Half BW Enable parameter from the "RX Analog PMA Settings" table.
  • Changed the name of the parameters in the "Byte Serializer and Deserializer Parameters" table to match the GUI.
  • Changed the description for rx_bitslip[<n>-1:0] in the "Gearbox" table.
  • Added the "Setting RX PMA Adaptation Modes" section.
  • Added the "Word Aligner in Deterministic Latency Mode for CPRI" section.
  • Removed the Best Case column from the "Register Chain Minimum Hold Time Calculations" table.
  • Removed the Best Case row from the "Register Chain Minimum Hold Time Calculations" table.
  • Updated the list of ports in the "PRBS Control and Status Ports" section.
  • Added the "PRBS Soft Accumulators Use Model" section.
2017.03.08 Made the following changes:
  • Changed the description of VGA Half BW Enable in the "RX Analog PMA Settings Options" table.
2017.02.17 Made the following changes:
  • Added the "GXT Channels" section.
  • Added the "Reconfiguring Between GX and GXT Channels" section.
  • Changed the description for the Enable rx_pma_clkslip port option in the "RX PMA Optional Ports" table.
  • Changed the list options for TX and RX analog PMA settings in the "Analog PMA Settings Parameters" section.
  • Removed parameters from the "TX Analog PMA Settings Options" and "RX Analog PMA Settings Options" tables.
  • Removed the "TX PMA Optional Ports - PMA QPI Options" table.
  • Changed the description for the rx_pma_clkslip port in the "RX PMA Ports" table.
  • Added the Enable PCS reset status ports option in the "PCS-Core Interface Parameters" table.
  • Added the "Implementing the PHY Layer for Transceiver Protocols" section.
2016.12.21 Initial release.