Wiki

This version is outdated by a newer approved version.DiffThis version (21 Apr 2020 08:55) was approved by Laszlo Nagy.The Previously approved version (15 Apr 2020 18:34) is available.Diff

This is an old revision of the document!


AD9081-FMCA-EBZ (Single MxFE) HDL Reference Design

Functional Overview

The AD9081-FMCA-EBZ reference design is a processor based (e.g. Microblaze) embedded system. The design consists from a receive and a transmit chain.

The receive chain transports the captured samples from ADC to the system memory (DDR). Before transferring the data to DDR the samples are stored in a buffer implemented on block rams from the FPGA fabric (util_adc_fifo). The space allocated in the buffer for each channel depends on the number of currently active channels. It goes up to M x 64k samples if a single channel is selected or 64k samples per channel if all channels are selected.

The transmit chain transports samples from the system memory to the DAC devices. Before streaming out the data to the DAC through the JESD link the samples first are loaded into a buffer (util_dac_fifo) which will cyclically stream the samples at the tx_device_clk data rate. The space allocated in the transmit buffer for each channel depends on the number of currently active channels. It goes up to M x 64k samples if a single channel is selected or 64k samples per channel if all channels are selected.

All cores from the receive and transmit chains are programmable through an AXI-Lite interface.

The transmit and receive chains can operate at different data rates having separate rx_device_clk/tx_device_clk and corresponding lane rates but must share the same reference clock.

HDL source code

Supported Carriers

Software support

Block design

The block design supports parameters and scales based on it as shown on the below two examples.

The parameters for Rx or Tx links can be changed from the system_project.tcl :

# Parameter description:
#    JESD_MODE : used link layer encoder mode 
#      64B66B - 64b66b link layer defined in JESD 204C, uses Xilinx IP as Physical layer
#      8B10B  - 8b10b link layer defined in JESD 204B, uses ADI IP as Physical layer
#    
#    RX_RATE :  line rate of the Rx link ( MxFE to FPGA ) used in 64B66B mode 
#    TX_RATE :  line rate of the Tx link ( FPGA to MxFE ) used in 64B66B mode 
#    REF_CLK_RATE : frequency of reference clock in MHz used in 64B66B mode
#    [RX/TX]_JESD_M : number of converters per link
#    [RX/TX]_JESD_L : number of lanes per link
#    [RX/TX]_JESD_NP : number of bits per sample, only 16 is supported
#    [RX/TX]_NUM_LINKS : number of links, 1 - single link; 2 - dual link. 
 
adi_project mxfe_zcu102 0 [list \
    JESD_MODE 8B10B \   
    RX_JESD_M 8 \
    RX_JESD_L 4 \
    RX_JESD_S 1 \
    RX_JESD_NP 16 \
    RX_NUM_LINKS 1 \
    TX_JESD_M 8 \
    TX_JESD_L 4 \
    TX_JESD_S 1 \
    TX_JESD_NP 16 \
    TX_NUM_LINKS 1 \
]

For the parameter selection the following restrictions apply:

Example block design for Single Link; M=8; L=4;

The Rx links (ADC Path) operate with the following parameters:

  • Rx Deframer parameters: L=4, M=8, F=4, S=1, N’=16, N = 16 (Quick Config 0x0A)
  • Dual link : No
  • RX_DEVICE_CLK – 250 MHz (Lane Rate/40)
  • REF_CLK – 500MHz (Lane Rate/20)
  • JESD204B Lane Rate – 10Gbps
  • QPLL0 or CPLL

The Tx links (DAC Path) operate with the following parameters:

  • Tx Framer parameters: L=4, M=8, F=4, S=1, N’=16, N = 16 (Quick Config 0x09)
  • Dual link : No
  • TX_DEVICE_CLK – 250 MHz (Lane Rate/40)
  • REF_CLK – 500MHz (Lane Rate/20)
  • JESD204B Lane Rate – 10Gbps
  • QPLL0 or CPLL

Example block design for Single Link; M=4; L=8;

The Rx links are set for full bandwidth mode and operate with the following parameters:

  • Rx Deframer parameters: L=8, M=4, F=1, S=1, N’=16, N = 16 (Quick Config 0x12)
  • Dual link : No
  • RX_DEVICE_CLK – 387.5 MHz (Lane Rate/40)
  • REF_CLK – 775MHz (Lane Rate/20)
  • JESD204B Lane Rate – 15.5Gbps
  • QPLL0

The Tx links are set for full bandwidth mode and operate with the following parameters:

  • Tx Framer parameters: L=8, M=4, F=1, S=1, N’=16, N = 16 (Quick Config 0x11)
  • Dual link : No
  • TX_DEVICE_CLK – 387.5 MHz (Lane Rate/40)
  • REF_CLK – 775MHz (Lane Rate/20)
  • JESD204B Lane Rate – 15.5Gbps
  • QPLL0

Example block design for Single Link; M=2; L=8; JESD204C

The Rx link is operating with the following parameters:

  • Rx Deframer parameters: L=8, M=2, F=1, S=2, N’=16, N=16 (Quick Config 0x13)
  • Dual link : No
  • RX_DEVICE_CLK – 250 MHz (Lane Rate/66)
  • REF_CLK – 500 MHz (Lane Rate/33)
  • JESD204C Lane Rate – 16.5Gbps
  • QPLL1 - selected in Xilinx PHY

The Tx link is operating with the following parameters:

  • Tx Framer parameters: L=8, M=2, F=1, S=4, N’=8, N=8 (Quick Config 0x13)
  • Dual link : No
  • TX_DEVICE_CLK – 250 MHz (Lane Rate/66)
  • REF_CLK – 500 MHz (Lane Rate/33)
  • JESD204C Lane Rate – 16.5Gbps
  • QPLL1 - selected in Xilinx PHY

Clock sources

The clock sources depend on the in use carrier and are depicted on the below diagrams:

ZCU102

VC118

Software considerations

ADC - crossbar config

Due physical constraints Rx lanes are reordered as described in the following table. e.g physical lane 2 from ADC connects to logical lane 7 from the FPGA. Therefore the crossbar from the device must be set accordingly.

ADC phy Lane FPGA Rx lane
0 2
1 0
2 7
3 6
4 5
5 4
6 3
7 1

DAC - crossbar config

Due physical constraints Tx lanes are reordered as described in the following table: e.g physical lane 2 from DAC connects to logical lane 7 from the FPGA. Therefore the crossbar from the device must be set accordingly.

DAC phy Lane FPGA Tx lane
0 0
1 2
2 7
3 6
4 1
5 5
6 4
7 3

Software support

More Information

Support

Analog Devices will provide limited online support for anyone using the reference design with Analog Devices components via the EngineerZone.

resources/eval/user-guides/ad9081_fmca_ebz/ad9081_fmca_ebz_hdl.1587452110.txt.gz · Last modified: 21 Apr 2020 08:55 by Laszlo Nagy