fpgasystems / Coyote

Framework providing operating system abstractions and a range of shared networking (RDMA, TCP/IP) and memory services to common modern heterogeneous platforms.
MIT License
219 stars 67 forks source link

U280 build static bitstream failed at creating design_hbm.bd #76

Closed qianyich closed 1 month ago

qianyich commented 1 month ago

Hi Coyote developers:

I am currently trying to run rdma_perf on Alveo U280 but failed when generating the bitstream. I have the following errors when synthesis. Is this due to the different vivado version I am using? (I am using 2023.1):

ERROR: [Synth 8-11365] for the instance 'mac_ip_encode_inst' of module 'mac_ip_encode_ip' declared at '/home/qianyich/Coyote/examples_hw/build_hw/test_shell/test.runs/synth_1/.Xil/Vivado-459987-fpga-tools/realtime/mac_ip_encode_ip_stub.v:6', named port connection 'm_axis_arp_lookup_request_TVALID' does not exist [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:532]
ERROR: [Synth 8-11365] for the instance 'mac_ip_encode_inst' of module 'mac_ip_encode_ip' declared at '/home/qianyich/Coyote/examples_hw/build_hw/test_shell/test.runs/synth_1/.Xil/Vivado-459987-fpga-tools/realtime/mac_ip_encode_ip_stub.v:6', named port connection 'm_axis_arp_lookup_request_TREADY' does not exist [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:533]
ERROR: [Synth 8-11365] for the instance 'mac_ip_encode_inst' of module 'mac_ip_encode_ip' declared at '/home/qianyich/Coyote/examples_hw/build_hw/test_shell/test.runs/synth_1/.Xil/Vivado-459987-fpga-tools/realtime/mac_ip_encode_ip_stub.v:6', named port connection 'm_axis_arp_lookup_request_TDATA' does not exist [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:534]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:535]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tvalid' [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:535]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:536]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tready' [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:536]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:537]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tdata' [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:537]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:538]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tkeep' [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:538]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:539]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tlast' [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:539]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:540]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'valid' [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:540]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:541]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'ready' [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:541]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:542]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'data' [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:542]
ERROR: [Synth 8-6156] failed synthesizing module 'network_stack' [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:39]
ERROR: [Synth 8-6156] failed synthesizing module 'network_top' [/home/qianyich/Coyote/hw/hdl/network/stack/network_top.sv:40]
ERROR: [Synth 8-6156] failed synthesizing module 'shell_top' [/home/qianyich/Coyote/examples_hw/build_hw/test_shell/hdl/shell_top.sv:35]
---------------------------------------------------------------------------------
Finished RTL Elaboration : Time (s): cpu = 00:00:06 ; elapsed = 00:00:06 . Memory (MB): peak = 4156.117 ; gain = 491.520 ; free physical = 61408 ; free virtual = 87102
---------------------------------------------------------------------------------
RTL Elaboration failed
INFO: [Common 17-83] Releasing license: Synthesis
220 Infos, 302 Warnings, 0 Critical Warnings and 23 Errors encountered.
synth_design failed
ERROR: [Common 17-69] Command failed: Synthesis failed - please see the console or run log file for details
INFO: [Common 17-206] Exiting Vivado at Wed Sep 18 21:42:05 2024...
[Wed Sep 18 21:42:07 2024] synth_1 finished
ERROR: [Vivado 12-13638] Failed runs(s) : 'synth_1'
wait_on_runs: Time (s): cpu = 02:05:46 ; elapsed = 00:17:55 . Memory (MB): peak = 6315.855 ; gain = 0.000 ; free physical = 64937 ; free virtual = 90631
** CERR: ERROR: [Common 17-39] 'wait_on_runs' failed due to earlier errors.

**
INFO: [Common 17-206] Exiting Vivado at Wed Sep 18 21:42:08 2024...
make[3]: *** [CMakeFiles/bitgen.dir/build.make:77: checkpoints/shell/shell_synthed.dcp] Error 1
make[2]: *** [CMakeFiles/Makefile2:68: CMakeFiles/bitgen.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:75: CMakeFiles/bitgen.dir/rule] Error 2
make: *** [Makefile:118: bitgen] Error 2

commands to reproduce:

mkdir examples_hw/build_hw && cd examples_hw/build_hw 
cmake ../ -DFDEV_NAME=u280  -DEXAMPLE=rdma_perf
make project
make bitgen

I understand the development for u280 is no longer active, but maybe you can point out where I can look into to get this error addressed. I would like to use the RDMA part to communicate with Mellanox NIC. This is why I am using Coyote-v2. I have used Coyote-v1 before.

Also, just to confirm that rdma_perf example is just a FPGA-based RDMA NIC, right? The vFPGA(vRegion) in this example is basically a dummy app and does nothing, right?

Thanks, Yicheng

qianyich commented 1 month ago

Switch to Vivado 2022.1 did not help, but gave me different errors:

ERROR: [Synth 8-439] module 'ila_rdma' not found [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:224]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:227]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'valid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:227]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:228]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'ready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:228]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:229]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'valid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:229]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:230]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'ready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:230]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:231]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'data' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:231]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:232]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'data' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:232]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:233]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'valid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:233]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:234]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'ready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:234]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:235]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'data' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:235]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:236]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'data' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:236]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:237]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'valid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:237]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:238]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'ready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:238]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:239]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'valid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:239]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:240]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'ready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:240]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:241]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tvalid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:241]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:242]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:242]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:243]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tlast' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:243]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:244]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tvalid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:244]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:245]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:245]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:246]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tlast' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:246]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:247]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'valid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:247]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:248]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'ready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:248]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:249]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'data' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:249]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:250]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'valid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:250]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:251]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'ready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:251]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:252]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'data' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:252]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:253]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tvalid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:253]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:254]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:254]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:255]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tlast' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:255]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:256]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tvalid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:256]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:257]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:257]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:258]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'tlast' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:258]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:259]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'valid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:259]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:260]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'ready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:260]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:261]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'valid' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:261]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:262]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'ready' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:262]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:263]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'data' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:263]
ERROR: [Synth 8-27] virtual interface in continuous assignment not supported [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:264]
ERROR: [Synth 8-6038] cannot resolve hierarchical name for the item 'data' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:264]
ERROR: [Synth 8-6156] failed synthesizing module 'roce_stack' [/home/qianyich/Coyote/hw/hdl/network/rdma/roce_stack.sv:39]
ERROR: [Synth 8-6156] failed synthesizing module 'network_stack' [/home/qianyich/Coyote/hw/hdl/network/stack/network_stack.sv:39]
ERROR: [Synth 8-6156] failed synthesizing module 'network_top' [/home/qianyich/Coyote/hw/hdl/network/stack/network_top.sv:40]
ERROR: [Synth 8-6156] failed synthesizing module 'shell_top' [/home/qianyich/Coyote/examples_hw/build_hw/test_shell/hdl/shell_top.sv:35]
---------------------------------------------------------------------------------
Finished RTL Elaboration : Time (s): cpu = 00:00:05 ; elapsed = 00:00:06 . Memory (MB): peak = 3666.832 ; gain = 460.574 ; free physical = 49616 ; free virtual = 86040
---------------------------------------------------------------------------------
RTL Elaboration failed
INFO: [Common 17-83] Releasing license: Synthesis
217 Infos, 203 Warnings, 0 Critical Warnings and 82 Errors encountered.
synth_design failed
ERROR: [Common 17-69] Command failed: Synthesis failed - please see the console or run log file for details
INFO: [Common 17-206] Exiting Vivado at Wed Sep 18 20:39:59 2024...
[Wed Sep 18 20:40:04 2024] synth_1 finished
WARNING: [Vivado 12-8222] Failed run(s) : 'synth_1'
wait_on_runs: Time (s): cpu = 02:10:08 ; elapsed = 00:17:55 . Memory (MB): peak = 5907.887 ; gain = 0.000 ; free physical = 51974 ; free virtual = 88398
** CERR: ERROR: [Common 17-69] Command failed: Run 'synth_1' failed. Unable to open

**
INFO: [Common 17-206] Exiting Vivado at Wed Sep 18 20:40:04 2024...

I just simply commented out the ila instantiation codes. And the bitgen failed at shell linking stage:

[ 60%] Generating checkpoints/shell_linked.dcp
                                                                                                                                                                                                                 ****** Vivado v2022.1 (64-bit)
  **** SW Build 3526262 on Mon Apr 18 15:47:01 MDT 2022
  **** IP Build 3524634 on Mon Apr 18 20:55:01 MDT 2022
    ** Copyright 1986-2022 Xilinx, Inc. All Rights Reserved.

source /home/qianyich/Coyote/examples_hw/build_hw/flow_link.tcl -notrace
** Starting shell linking ...
**
** CERR: ERROR: [Vivado 12-172] File or Directory '/home/qianyich/Coyote/examples_hw/..//hw/checkpoints/static_routed_locked_u280.dcp' does not exist

**
INFO: [Common 17-206] Exiting Vivado at Wed Sep 18 21:06:54 2024...
CMakeFiles/bitgen.dir/build.make:68: recipe for target 'checkpoints/shell_linked.dcp' failed
make[3]: *** [checkpoints/shell_linked.dcp] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/bitgen.dir/all' failed
make[2]: *** [CMakeFiles/bitgen.dir/all] Error 2
CMakeFiles/Makefile2:74: recipe for target 'CMakeFiles/bitgen.dir/rule' failed
make[1]: *** [CMakeFiles/bitgen.dir/rule] Error 2
Makefile:118: recipe for target 'bitgen' failed
make: *** [bitgen] Error 2
qianyich commented 1 month ago

I think it might be due to the lack of u280 static region. I tried to build static region, then gave me :

** Static project created
**
** Creating shell project ...
**
INFO: [IP_Flow 19-234] Refreshing IP repositories
INFO: [IP_Flow 19-1700] Loaded user IP repository '/home/qianyich/Coyote/examples_hw/build_hw/iprepo'.
INFO: [IP_Flow 19-2313] Loaded Vivado IP repository '/tools/Xilinx/Vivado/2022.1/data/ip'.
WARNING: [Common 17-1361] You have specified a new message control rule that is equivalent to an existing rule with attributes ' -id {Vivado 12-2924}  -suppress '. The existing rule will be replaced.
WARNING: [Common 17-1361] You have specified a new message control rule that is equivalent to an existing rule with attributes ' -id {IP_Flow 19-4832}  -suppress '. The existing rule will be replaced.

Adding file '/home/qianyich/Coyote/examples_hw/build_hw/test_shell/test.srcs/constrs_1/local.xdc' to fileset 'constrs_1'
WARNING: [IP_Flow 19-3374] An attempt to modify the value of disabled parameter 'NUM_OUT_CLKS' from '4' to '3' has been ignored for IP 'clk_wiz_shell'
INFO: [xilinx.com:ip:debug_bridge:3.0-0] debug_bridge_dynamic:  Update boundary has completed
INFO: [xilinx.com:ip:debug_bridge:3.0-0] debug_bridge_dynamic:  Update boundary has started running
INFO: [xilinx.com:ip:debug_bridge:3.0-0] debug_bridge_dynamic:  Update content has started running
INFO: [BD_TCL-3] Currently there is no design <design_ctrl> in project, so creating one...
Wrote  : </home/qianyich/Coyote/examples_hw/build_hw/test_shell/test.srcs/sources_1/bd/design_ctrl/design_ctrl.bd>
Wrote  : </home/qianyich/Coyote/examples_hw/build_hw/test_shell/test.srcs/sources_1/bd/design_ctrl/design_ctrl.bd>
INFO: [BD_TCL-3] Currently there is no design <design_hbm> in project, so creating one...
Wrote  : </home/qianyich/Coyote/examples_hw/build_hw/test_shell/test.srcs/sources_1/bd/design_hbm/design_hbm.bd>
INFO: [BD_TCL-6] Checking if the following IPs exist in the project's IP catalog:
  xilinx.com:ip:hbm:1.0 xilinx.com:ip:proc_sys_reset:5.0 xilinx.com:ip:axi_apb_bridge:3.0  .
WARNING: [BD 5-670] It is required to provide a frequency value for a user created input clock port. Please use the <-freq_hz $freq_val> argument of the create_bd_port command. ie create_bd_port -dir I -type clk -freq_hz 100000000 clkin
WARNING: [BD 5-670] It is required to provide a frequency value for a user created input clock port. Please use the <-freq_hz $freq_val> argument of the create_bd_port command. ie create_bd_port -dir I -type clk -freq_hz 100000000 clkin
WARNING: [BD 5-670] It is required to provide a frequency value for a user created input clock port. Please use the <-freq_hz $freq_val> argument of the create_bd_port command. ie create_bd_port -dir I -type clk -freq_hz 100000000 clkin
INFO: [IP_Flow 19-5107] Inferred bus interface 'm_axi_0' of definition 'xilinx.com:interface:aximm:1.0' (from Xilinx Repository).
INFO: [IP_Flow 19-5107] Inferred bus interface 'm_axi_1' of definition 'xilinx.com:interface:aximm:1.0' (from Xilinx Repository).
INFO: [IP_Flow 19-5107] Inferred bus interface 's_axi' of definition 'xilinx.com:interface:aximm:1.0' (from Xilinx Repository).
INFO: [IP_Flow 19-5107] Inferred bus interface 'aresetn' of definition 'xilinx.com:signal:reset:1.0' (from Xilinx Repository).
INFO: [IP_Flow 19-5107] Inferred bus interface 'aclk' of definition 'xilinx.com:signal:clock:1.0' (from Xilinx Repository).
INFO: [IP_Flow 19-4728] Bus Interface 'aresetn': Added interface parameter 'POLARITY' with value 'ACTIVE_LOW'.
INFO: [IP_Flow 19-4728] Bus Interface 'aclk': Added interface parameter 'ASSOCIATED_BUSIF' with value 'm_axi_0'.
INFO: [IP_Flow 19-4728] Bus Interface 'aclk': Added interface parameter 'ASSOCIATED_RESET' with value 'aresetn'.
INFO: [IP_Flow 19-234] Refreshing IP repositories
INFO: [IP_Flow 19-1700] Loaded user IP repository '/home/qianyich/Coyote/examples_hw/build_hw/iprepo'.
WARNING: [BD 5-232] No interface pins matched 'get_bd_intf_pins hbm_inst/SAXI_00_8HI'
ERROR: [BD 5-106] Arguments to the connect_bd_intf_net command cannot be empty.
** CERR: ERROR: [Common 17-39] 'connect_bd_intf_net' failed due to earlier errors.

**
INFO: [Common 17-206] Exiting Vivado at Wed Sep 18 21:19:35 2024...

this seems to be from block design creation which in turn invokes cr_hbm_split.tcl, are there any problems with that file?

Could anyone please give a quick fix on this?

qianyich commented 1 month ago

The problem turns out to be with cr_hbm_split.tcl. I disabled HBM_SPLIT which means use cr_hbm.tcl instead for memory in the dynamic shell. I set up single region with single application. The make bitgen process seems to be smooth now. Another general question is that if I want to use RDMA in the dynamic shell, should I enable BUILD_SHELL when build rdma-perf? Or I just set SHELL_PATH to the static one, and everything will be handled automatically? My goal is to have HBM and RDMA in my static+dynamic shell without changing it later and only develop applications for now. Maybe anyone can give some advice on this.

if(EXAMPLE STREQUAL "static")
    set(BUILD_STATIC 1)
    set(BUILD_SHELL 0)
    set(BUILD_OPT 1)
    set(N_REGIONS 1)
    set(EN_STRM 1)
    set(EN_MEM 1)
    # set(HBM_SPLIT 1)

    validation_checks_hw()

    load_apps (
        VFPGA_C0_0 "apps/perf_local"
        # VFPGA_C0_1 "apps/perf_local"
        # VFPGA_C0_2 "apps/perf_local"
        # VFPGA_C0_3 "apps/perf_local"
    )

    create_hw()
endif()