Here because you have already got the RTL design files in the ./rtl
directory, you need to package them along with the IP (.xci
files) into two Vitis kernels (.xo
files). Again, you can use the Vivado GUI version of IP packager to finish the IP packaging, but you will use command line and Tcl scripts to finish this. Use following command to package the kernels, then two kernel files (ethernet_krnl_axis_x1.xo
and data_fifo_krnl.xo
) will be generated in currently for following Vitis linking jobs.
make pack_kernel
You can review Tcl scripts pack_eth_kernel.tcl
and pack_data_fifo_kernel.tcl
to get the kernel packaging setting, which corresponds to the Vivado GUI mode dialogs. In the packaging steps for ethernet kernel, you can see that in addition to standard AXI bus interfaces, two additional bus interfaces are created for later Vitis v++
automatic connection feature: gt_port
for GT transceivers data bus and gt_refclk
for GT transceivers differential clock.