Skip to content

Commit 94d679e

Browse files
committed
adrv9026: Add ORX support in NLS mode
Signed-off-by: AndrDragomir <[email protected]>
1 parent 590cf67 commit 94d679e

File tree

8 files changed

+219
-52
lines changed

8 files changed

+219
-52
lines changed

Diff for: projects/adrv9026/common/adrv9026_bd.tcl

+195-44
Large diffs are not rendered by default.

Diff for: projects/adrv9026/vcu118/Makefile

+1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ M_DEPS += ../../common/xilinx/dacfifo_bd.tcl
1414
M_DEPS += ../../../library/jesd204/scripts/jesd204.tcl
1515
M_DEPS += ../../../library/common/ad_iobuf.v
1616

17+
LIB_DEPS += axi_clkgen
1718
LIB_DEPS += axi_dmac
1819
LIB_DEPS += axi_sysid
1920
LIB_DEPS += jesd204/ad_ip_jesd204_tpl_adc

Diff for: projects/adrv9026/vcu118/system_constr.xdc

+3
Original file line numberDiff line numberDiff line change
@@ -94,3 +94,6 @@ set_property -dict {PACKAGE_PIN AP37 IOSTANDARD LVCMOS18} [get_ports spi_mosi]
9494

9595
create_clock -name ref_clk -period 4.00 [get_ports ref_clk_p]
9696
create_clock -name core_clk -period 4.00 [get_ports core_clk_p]
97+
98+
set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets i_core_clk_ibufds_1/O]
99+
set_property CLOCK_DEDICATED_ROUTE BACKBONE [get_nets core_clk]

Diff for: projects/adrv9026/vcu118/system_project.tcl

+5-1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ source $ad_hdl_dir/projects/scripts/adi_board.tcl
2020

2121
adi_project adrv9026_vcu118 0 [list \
2222
JESD_MODE [get_env_param JESD_MODE 8B10B ] \
23+
LINK_SHARING [get_env_param LINK_SHARING 1 ] \
2324
TX_LANE_RATE [get_env_param TX_LANE_RATE 9.83 ] \
2425
RX_LANE_RATE [get_env_param RX_LANE_RATE 9.83 ] \
2526
TX_NUM_LINKS [get_env_param RX_NUM_LINKS 1 ] \
@@ -30,6 +31,9 @@ adi_project adrv9026_vcu118 0 [list \
3031
RX_JESD_M [get_env_param RX_JESD_M 8 ] \
3132
RX_JESD_L [get_env_param RX_JESD_L 4 ] \
3233
RX_JESD_S [get_env_param RX_JESD_S 1 ] \
34+
RX_OS_JESD_M [get_env_param RX_OS_JESD_M 0 ] \
35+
RX_OS_JESD_L [get_env_param RX_OS_JESD_L 0 ] \
36+
RX_OS_JESD_S [get_env_param RX_OS_JESD_S 0 ] \
3337
]
3438

3539
adi_project_files adrv9026_vcu118 [list \
@@ -38,6 +42,6 @@ adi_project_files adrv9026_vcu118 [list \
3842
"$ad_hdl_dir/library/common/ad_iobuf.v" \
3943
"$ad_hdl_dir/projects/common/vcu118/vcu118_system_constr.xdc" ]
4044

41-
## To improve timing of the BRAM buffers
45+
set_property strategy Performance_RefinePlacement [get_runs impl_1]
4246

4347
adi_project_run adrv9026_vcu118

Diff for: projects/adrv9026/vcu118/system_top.v

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ***************************************************************************
22
// ***************************************************************************
3-
// Copyright (C) 2024 Analog Devices, Inc. All rights reserved.
3+
// Copyright (C) 2024-2025 Analog Devices, Inc. All rights reserved.
44
//
55
// In this HDL repository, there are many different and unique modules, consisting
66
// of various HDL (Verilog or VHDL) components. The individual modules are
@@ -166,8 +166,6 @@ module system_top (
166166

167167
assign gpio_i[25:17] = gpio_o[25:17];
168168

169-
assign rx_os_sync = 1'b0;
170-
171169
// instantiations
172170

173171
IBUFDS_GTE4 i_ibufds_rx_ref_clk (
@@ -192,7 +190,7 @@ module system_top (
192190
.OB (rx_sync_n));
193191

194192
OBUFDS i_obufds_rx_os_sync (
195-
.I (rx_os_sync),
193+
.I (~rx_os_sync),
196194
.O (rx_os_sync_p),
197195
.OB (rx_os_sync_n));
198196

@@ -320,8 +318,11 @@ module system_top (
320318
.rx_data_3_n (rx_data_n[3]),
321319
.rx_data_3_p (rx_data_p[3]),
322320
.rx_ref_clk_0 (ref_clk),
321+
.rx_os_ref_clk_0 (ref_clk),
323322
.rx_sync_0 (rx_sync),
323+
.rx_os_sync (rx_os_sync),
324324
.rx_sysref_0 (sysref),
325+
.rx_os_sysref (sysref),
325326
.tx_data_0_n (tx_data_n[0]),
326327
.tx_data_0_p (tx_data_p[0]),
327328
.tx_data_1_n (tx_data_n[1]),

Diff for: projects/adrv9026/zcu102/Makefile

+1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ M_DEPS += ../../common/xilinx/dacfifo_bd.tcl
1414
M_DEPS += ../../../library/jesd204/scripts/jesd204.tcl
1515
M_DEPS += ../../../library/common/ad_iobuf.v
1616

17+
LIB_DEPS += axi_clkgen
1718
LIB_DEPS += axi_dmac
1819
LIB_DEPS += axi_sysid
1920
LIB_DEPS += jesd204/ad_ip_jesd204_tpl_adc

Diff for: projects/adrv9026/zcu102/system_project.tcl

+4
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ source $ad_hdl_dir/projects/scripts/adi_board.tcl
99

1010
adi_project adrv9026_zcu102 0 [list \
1111
JESD_MODE [get_env_param JESD_MODE 8B10B ] \
12+
LINK_SHARING [get_env_param LINK_SHARING 1 ] \
1213
TX_LANE_RATE [get_env_param TX_LANE_RATE 9.83 ] \
1314
RX_LANE_RATE [get_env_param RX_LANE_RATE 9.83 ] \
1415
TX_NUM_LINKS [get_env_param RX_NUM_LINKS 1 ] \
@@ -19,6 +20,9 @@ adi_project adrv9026_zcu102 0 [list \
1920
RX_JESD_M [get_env_param RX_JESD_M 8 ] \
2021
RX_JESD_L [get_env_param RX_JESD_L 4 ] \
2122
RX_JESD_S [get_env_param RX_JESD_S 1 ] \
23+
RX_OS_JESD_M [get_env_param RX_OS_JESD_M 0 ] \
24+
RX_OS_JESD_L [get_env_param RX_OS_JESD_L 0 ] \
25+
RX_OS_JESD_S [get_env_param RX_OS_JESD_S 0 ] \
2226
]
2327
adi_project_files adrv9026_zcu102 [list \
2428
"system_top.v" \

Diff for: projects/adrv9026/zcu102/system_top.v

+5-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ***************************************************************************
22
// ***************************************************************************
3-
// Copyright (C) 2023-2024 Analog Devices, Inc. All rights reserved.
3+
// Copyright (C) 2023-2025 Analog Devices, Inc. All rights reserved.
44
//
55
// In this HDL repository, there are many different and unique modules, consisting
66
// of various HDL (Verilog or VHDL) components. The individual modules are
@@ -124,7 +124,6 @@ module system_top (
124124

125125
assign gpio_i[94:69] = gpio_o[94:69];
126126
assign gpio_i[31:21] = gpio_o[31:21];
127-
assign rx_os_sync = 1'b0;
128127

129128
// instantiations
130129

@@ -150,7 +149,7 @@ module system_top (
150149
.OB (rx_sync_n));
151150

152151
OBUFDS i_obufds_rx_os_sync (
153-
.I (rx_os_sync),
152+
.I (~rx_os_sync),
154153
.O (rx_os_sync_p),
155154
.OB (rx_os_sync_n));
156155

@@ -235,8 +234,11 @@ module system_top (
235234
.rx_data_3_n (rx_data_n[3]),
236235
.rx_data_3_p (rx_data_p[3]),
237236
.rx_ref_clk_0 (ref_clk),
237+
.rx_os_ref_clk_0 (ref_clk),
238238
.rx_sync_0 (rx_sync),
239+
.rx_os_sync (rx_os_sync),
239240
.rx_sysref_0 (sysref),
241+
.rx_os_sysref (sysref),
240242
.spi0_sclk (spi_clk),
241243
.spi0_csn (spi_csn),
242244
.spi0_miso (spi_miso),

0 commit comments

Comments
 (0)