|
| 1 | +# ARDV904x/ZCU102 HDL Project |
| 2 | + |
| 3 | +## Building the project |
| 4 | + |
| 5 | +The parameters configurable through the `make` command, can be found below, as well as in the **system_project.tcl** file; it contains the default configuration. |
| 6 | + |
| 7 | +``` |
| 8 | +cd projects/adrv904x/zcu102 |
| 9 | +make |
| 10 | +``` |
| 11 | + |
| 12 | +All of the RX/TX link modes can be found in the [AD9040 data sheet](https://www.analog.com/media/en/technical-documentation/data-sheets/adrv9040.pdf). We offer support for only a few of them. |
| 13 | + |
| 14 | +If other configurations are desired, then the parameters from the HDL project (see below) need to be changed, as well as the Linux/no-OS project configurations. |
| 15 | + |
| 16 | +**Warning**: The JESD link mode is configured using the ADRV904x plugin from [ACE](https://wiki.analog.com/resources/tools-software/ace) application. The device tree is the same, regardless of the configuration: [zynqmp-zcu102-rev10-adrv904x.dts](https://github.com/analogdevicesinc/linux/blob/main/arch/arm64/boot/dts/xilinx/zynqmp-zcu102-rev10-adrv904x.dts) |
| 17 | + |
| 18 | +The overwritable parameters from the environment: |
| 19 | + |
| 20 | +- JESD_MODE - link layer encoder mode used; |
| 21 | + - 8B10B - 8b10b link layer defined in JESD204B, uses ADI IP as Physical layer |
| 22 | + - 64B66B - 64b66b link layer defined in JESD204C, uses Xilinx IP as Physical layer |
| 23 | +- [RX/TX]_LANE_RATE - lane rate of the [RX/TX] link (RX: MxFE to FPGA/TX: FPGA to MxFE) |
| 24 | +- [RX/TX]_JESD_M - [RX/TX] number of converters per link |
| 25 | +- [RX/TX]_JESD_L - [RX/TX] number of lanes per link |
| 26 | +- [RX/TX]_JESD_S - [RX/TX] number of samples per converter per frame |
| 27 | +- [RX/TX]_JESD_NP - [RX/TX] number of bits per sample, only 16 is supported |
| 28 | +- [RX/TX]_NUM_LINKS - [RX/TX] number of links, which matches the number of MxFE devices |
| 29 | +- [RX/TX]_TPL_WIDTH - [RX/TX] transport layer data width |
| 30 | + |
| 31 | +### Example configurations |
| 32 | + |
| 33 | +#### Default configuration |
| 34 | + |
| 35 | +This specific command is equivalent to running `make` only: |
| 36 | + |
| 37 | +``` |
| 38 | +make JESD_MODE=64B66B RX_LANE_RATE=16.22 TX_LANE_RATE=16.22 RX_JESD_M=16 RX_JESD_L=8 RX_JESD_S=1 TX_JESD_M=16 TX_JESD_L=8 TX_JESD_S=1 |
| 39 | +``` |
| 40 | + |
| 41 | +Corresponding device tree: [zynqmp-zcu102-rev10-adrv904x.dts](https://github.com/analogdevicesinc/linux/blob/main/arch/arm64/boot/dts/xilinx/zynqmp-zcu102-rev10-adrv904x.dts) |
0 commit comments