pluto_hdl_adi/docs/regmap/adi_regmap_xcvr.txt

654 lines
14 KiB
Plaintext

TITLE
Xilinx XCVR (axi_xcvr) Regmap
XCVR
ENDTITLE
############################################################################################
############################################################################################
REG
0x0000
VERSION
Version Register
ENDREG
FIELD
[31:0]
VERSION
RO
Version number.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0001
ID
Instance Identification Register
ENDREG
FIELD
[31:0]
ID
RO
Instance identifier number.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0002
SCRATCH
Scratch (GP R/W) Register
ENDREG
FIELD
[31:0]
SCRATCH
RW
Scratch register.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0004
RESETN
Reset Control Register
ENDREG
FIELD
[1]
BUFSTATUS_RST
RW
Initially this flag is held in reset with value 0x1, in order for a user to see the RX BUFSTATUS, this flag needs to be set to 0x0.
ENDFIELD
FIELD
[0]
RESETN
RW
If clear, link is held in reset, set this bit to 0x1 to activate link. Note that the reference clock and DRP clock must be active before setting this bit.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0005
STATUS
Status Reporting Register
ENDREG
FIELD
[6:5]
BUFSTATUS
RO
BUFSTATUS provides status for either the RX buffer or the TX buffer. If BUFSTATUS is referring to the TX buffer, once BUFSTATUS is set High it remains High until RESETN is activated. Else if BUFSTATUS is referring to the RX buffer, once BUFSTSTATUS is High it can be cleared using BUFSTATUS_RST. If BUFTATUS[6] is 0x1 the internal FIFO overflows and when the BUFSTATUS[5] is 0x1 the internal FIFO underflows. Available from version 17.5.a. For more information consult the transceiver user guide(search for RXBUFSTATUS/TXBUFSTATUS).
ENDFIELD
FIELD
[4]
PLL_LOCK_N
RO
After setting the RESETN bit above, this bit must clear. If does not clears, indicates the CPLL/QPLL did not locked. Available from version 17.4.a
ENDFIELD
FIELD
[0]
STATUS
RO
After setting the RESETN bit above, wait for this bit to set. If set, indicates successful link activation.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0007
FPGA_INFO
FPGA device information [[https://github.com/analogdevicesinc/hdl/blob/main/library/scripts/adi_xilinx_device_info_enc.tcl |Xilinx encoded values]]
ENDREG
FIELD
[31:24]
FPGA_TECHNOLOGY
RO
Encoded value describing the technology/generation of the FPGA device (e.g, 7series, ultrascale)
ENDFIELD
FIELD
[23:16]
FPGA_FAMILY
RO
Encoded value describing the family variant of the FPGA device(e.g., zynq, kintex, virtex)
ENDFIELD
FIELD
[15:8]
SPEED_GRADE
RO
Encoded value describing the FPGA's speed-grade
ENDFIELD
FIELD
[7:0]
DEV_PACKAGE
RO
Encoded value describing the device package. The package might affect high-speed interfaces
ENDFIELD
############################################################################################
############################################################################################
REG
0x0008
CONTROL
Transceiver Control Register
ENDREG
FIELD
[12]
LPM_DFE_N
RW
Transceiver primitive control, refer Xilinx documentation.
ENDFIELD
FIELD
[10:8]
RATE[2:0]
RW
Transceiver primitive control, refer Xilinx documentation.
ENDFIELD
FIELD
[5:4]
SYSCLK_SEL[1:0]
RW
For GTX drives directly the (RX/TX)SYSCLKSEL pin of the transceiver. Refer to Xilinx documentation. For GTH/GTY drives directly the (RX/TX)PLLCLKSEL pin of the transceiver and indirectly the (RX/TX)SYSCLKSEL pin of the transceiver see [[:resources:fpga:docs:axi_adxcvr#Table 1]].
ENDFIELD
FIELD
[2:0]
OUTCLK_SEL[2:0]
RW
Transceiver primitive control [[:resources:fpga:docs:axi_adxcvr#Table 2]], refer Xilinx documentation.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0009
GENERIC_INFO
Physical layer info
ENDREG
FIELD
[20]
QPLL_ENABLE
RO
Using QPLL.
ENDFIELD
FIELD
[19:16]
XCVR_TYPE[3:0]
RO
[[https://github.com/analogdevicesinc/hdl/blob/main/library/scripts/adi_xilinx_device_info_enc.tcl | Xilinx encoded values.]]
ENDFIELD
FIELD
[13:12]
LINK_MODE
RO
Link layer mode : 01 - 8B10B decoder (aka 204B) 10 - 64B66B decoder (aka 204C); Available from version 17.3.a
ENDFIELD
FIELD
[8]
TX_OR_RX_N
RO
Transceiver type (transmit or receive)
ENDFIELD
FIELD
[7:0]
NUM_OF_LANES
RO
Physical layer number of lanes.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0010
CM_SEL
Transceiver Access Register
ENDREG
FIELD
[7:0]
CM_SEL
RW
Transceiver common-DRP sel, set to 0xff for broadcast.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0011
CM_CONTROL
Transceiver Access Register
ENDREG
FIELD
[28]
CM_WR
RW
Transceiver common-DRP sel, set to 0x1 for write, 0x0 for read.
ENDFIELD
FIELD
[27:16]
CM_ADDR
RW
Transceiver common-DRP read/write address.
ENDFIELD
FIELD
[15:0]
CM_WDATA
RW
Transceiver common-DRP write data.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0012
CM_STATUS
Transceiver Access Register
ENDREG
FIELD
[16]
CM_BUSY
RO
Transceiver common-DRP access busy (0x1) or idle (0x0).
ENDFIELD
FIELD
[15:0]
CM_RDATA
RW
Transceiver common-DRP read data.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0018
CH_SEL
Transceiver Access Register
ENDREG
FIELD
[7:0]
CH_SEL
RW
Transceiver channel-DRP sel, set to 0xff for broadcast.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0019
CH_CONTROL
Transceiver Access Register
ENDREG
FIELD
[28]
CH_WR
RW
Transceiver channel-DRP sel, set to 0x1 for write, 0x0 for read.
ENDFIELD
FIELD
[27:16]
CH_ADDR
RW
Transceiver channel-DRP read/write address.
ENDFIELD
FIELD
[15:0]
CH_WDATA
RW
Transceiver channel-DRP write data.
ENDFIELD
############################################################################################
############################################################################################
REG
0x001a
CH_STATUS
Transceiver Access Register
ENDREG
FIELD
[16]
CH_BUSY
RO
Transceiver channel-DRP access busy (0x1) or idle (0x0).
ENDFIELD
FIELD
[15:0]
CH_RDATA
RW
Transceiver channel-DRP read data.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0020
ES_SEL
Transceiver Access Register
ENDREG
FIELD
[7:0]
ES_SEL
RW
Transceiver eye-scan-DRP sel, set to 0xff for broadcast.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0028
ES_REQ
Transceiver eye-scan Request Register
ENDREG
FIELD
[0]
ES_REQ
RW
Transceiver eye-scan request, set this bit to initiate an eye-scan, this bit auto-clears when scan is complete.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0029
ES_CONTROL_1
Transceiver eye-scan Control Register
ENDREG
FIELD
[4:0]
ES_PRESCALE[4:0]
RW
Transceiver eye-scan control, refer Xilinx documentation.
ENDFIELD
############################################################################################
############################################################################################
REG
0x002a
0x00a8
ES_CONTROL_2
Transceiver eye-scan Control Register
ENDREG
FIELD
[25:24]
ES_VOFFSET_RANGE
RW
Transceiver eye-scan control, refer Xilinx documentation.
ENDFIELD
FIELD
[23:16]
ES_VOFFSET_STEP
RW
Transceiver eye-scan control, refer Xilinx documentation.
ENDFIELD
FIELD
[15:8]
ES_VOFFSET_MAX
RW
Transceiver eye-scan control, refer Xilinx documentation.
ENDFIELD
FIELD
[7:0]
ES_VOFFSET_MIN
RW
Transceiver eye-scan control, refer Xilinx documentation.
ENDFIELD
############################################################################################
############################################################################################
REG
0x002b
ES_CONTROL_3
Transceiver eye-scan Control Register
ENDREG
FIELD
[27:16]
ES_HOFFSET_MAX
RW
Transceiver eye-scan control, refer Xilinx documentation.
ENDFIELD
FIELD
[11:0]
ES_HOFFSET_MIN
RW
Transceiver eye-scan control, refer Xilinx documentation.
ENDFIELD
############################################################################################
############################################################################################
REG
0x002c
ES_CONTROL_4
Transceiver eye-scan Control Register
ENDREG
FIELD
[11:0]
ES_HOFFSET_STEP
RW
Transceiver eye-scan control, refer Xilinx documentation.
ENDFIELD
############################################################################################
############################################################################################
REG
0x002d
ES_CONTROL_5
Transceiver eye-scan Control Register
ENDREG
FIELD
[31:0]
ES_STARTADDR
RW
Transceiver eye-scan control, DMA start address (ES data is written to this memory address).
ENDFIELD
############################################################################################
############################################################################################
REG
0x002e
ES_STATUS
Transceiver eye-scan Status Register
ENDREG
FIELD
[0]
ES_STATUS
RO
If set, indicates an error in ES DMA.
ENDFIELD
############################################################################################
############################################################################################
REG
0x002F
ES_RESET
Transceiver eye-scan reset control register
ENDREG
FIELD
[n]
ES_RESET
RW
Controls the EYESCANRESET pin of the GTH/GTY transceivers for lane n.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0030
TX_DIFFCTRL
Transceiver primitive control, refer Xilinx documentation.
ENDREG
FIELD
[31:0]
TX_DIFFCTRL
RW
TX driver swing control.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0031
TX_POSTCURSOR
Transceiver primitive control, refer Xilinx documentation.
ENDREG
FIELD
[31:0]
TX_POSTCURSOR
RW
Transmiter post-cursor TX pre-emphasis control.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0032
TX_PRECURSOR
Transceiver primitive control, refer Xilinx documentation.
ENDREG
FIELD
[31:0]
TX_PRECURSOR
RW
Transmiter pre-cursor TX pre-emphasis control.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0050
FPGA_VOLTAGE
FPGA device voltage information
ENDREG
FIELD
[15:0]
FPGA_VOLTAGE
RO
The voltage of the FPGA device in mv
ENDFIELD
############################################################################################
############################################################################################
REG
0x0060
PRBS_CNTRL
Transceiver PRBS control
ENDREG
FIELD
[16]
PRBSFORCEERR
RW
Valid for TX. If set, a single error is forced in the PRBS transmitter for every clock cycle. Can be used to test the PRBS checkers on the other side of the link.
ENDFIELD
FIELD
[8]
PRBSCNTRESET
RW
Valid for RX. Resets the PRBS error counter from the transceiver. Does not self clears. Value of error counter must be accessed via DRP.
ENDFIELD
FIELD
[3:0]
PRBSSEL
RW
PRBS checker or generator test pattern control. All zeros will put the PRBS in bypass mode. For TX non-zero values will stop the normal dataflow from link layer and will inject a pattern instead. See transceiver guide for specific values.
ENDFIELD
############################################################################################
############################################################################################
REG
0x0061
PRBS_STATUS
RX Transceiver PRBS status
ENDREG
FIELD
[8]
PRBSERR
RO
This sticky status output indicates that PRBS errors have occurred. Value of error counter must be accessed via DRP.
ENDFIELD
FIELD
[0]
PRBSLOCKED
RO
Ignore this bit for GTX transceivers. For others: Indicates that the RX PRBS checker has been error free for 15 XCLK cycles after reset. Once asserted High, it does not deassert until reset of the RX pattern checker via PRBSCNTRESET
ENDFIELD