Click on each item below to see the detailed Revision History:
November 2024
Upgrading to 2024.2
April 2024
Upgrading to 2024.1
September 2023
Upgrading to 2023.2
Integrating VEK280/VEK280_es1 option
AI Engine:
Replaced kernels and graphs to use AIE API and C++ Object Oriented Style with templates
HLS:
Replaced qdma_axis type with ap_axis type
February 2023
general:
Changing dir structure for the upcoming baremetal ps_apps and vitis export flow
December 2022
general:
Adding the option to use the xpfm and/or linux pre-builds
June 2022
general:
Updated tutoral to 2022.2
April 2022
platform/hw:
Added lpddr4 to the base platform
general:
Updated tutoral to 2022.1
March 2022
platform/hw:
Removed some ip and connections to end-up with the bare minimum base platform needed
Vitis nicely adds and changes IP and connections as required
Exposed 1 extra clock via BUFG (clk_out2) next to the 4 exisiting clocks via MBUFGCE (clk_out1_o1-4)
id=0 -> clk_out1_o1 -> 500MHz
id=1 -> clk_out1_o2 -> 250MHz
id=2 -> clk_out1_o3 -> 125MHz
id=3 -> clk_out1_o4 -> 62.5MHz
id=4 -> clk_out2 -> 333MHz
linux:
Added Yocto as alternative Linux build tool option with:
[project-root]/Makefile
-export LINUX_BUILD_TOOL := yocto
[project-root]/Makefile
-export LINUX_YOCTO_ROOT := ${HOME}/bin
Added
[project-root]/linux/yocto
Petalinux and/or Yocto TMP_DIR is now set and can be changed with
export LINUX_TMP_DIR := /tmp/linux/${LINUX_BUILD_TOOL}
Moved
[project-root]/petalinux
to[project-root]/linux/petalinux
Moved
[project-root]/petalinux/src/boot_custom.bif
to[project-root]/linux/src/boot_custom.bif
Moved
[project-root]/petalinux/src/device-tree
to[project-root]/linux/src/recipes-bsp/device-tree
Moved
[project-root]/petalinux/init-ifupdown
to[project-root]/linux/src/recipes-bsp/init-ifupdown
Linux build for
export LINUX_BUILD_TOOL := petalinux
ends up in[project-root]/linux/${BOARD_NAME}-versal
Linux build for
export LINUX_BUILD_TOOL := yocto
ends up in[project-root]/linux/${BOARD_NAME}-versal
and[project-root]/linux/${BOARD_NAME}-versal-meta
Sysroot build for
export LINUX_BUILD_TOOL := petalinux
andexport LINUX_BUILD_TOOL := yocto
ends up in[project-root]/linux/sysroot
Updated
[project-root]/linux/src/device-tree/files/system-user.dtsi
for proper Ethernet PHY configurationAdded support for offline petalinux-build (Excluding sysroot build!) with:
export LINUX_BUILD_SOURCES := local
export LINUX_LOCAL_DOWNLOADS_DIR := /tmp/plnx-workspace/downloads
export LINUX_LOCAL_SSTATE_DIR := /tmp/plnx-workspace/sstate_aarch64_2022.1/aarch64
platform/sw
Updated
[project-root]/platform/sw/src/qemu/lnx/qemu_args.txt
for adding Ethernet connectivity support (ssh/scp/…) for hardware emulationexport TARGET := hw_emu
Removed linux generated images dependencies; since NOT required
bif:
Added
[project-root]/linux/${BOARD_NAME}-versal/images/linux/Image
and[project-root]/linux/${BOARD_NAME}-versal/images/linux/rootfs.cpio.gz.u-boot
copy to the software platform to keep proper naming whenexport LINUX_BUILD_TOOL := yocto
Added some dependencies so its only executed when needed
ip:
Added vadd streaming kernels: mm2s_vadd_s -> vadd_s -> s2mm_vadd_s
Renamed vadd to vadd_mm (vadd memory mapped kernel)
Removed dependency on
${TARGET}
; since NOT required
ps_apps:
Added vadd_s to check the vadd_s streaming kernels
Renamed vadd_cpp to vadd_mm_cpp to check the vadd memory mapped kernel
Renamed vadd_ocl to vadd_mm_ocl to check the vadd memory mapped kernel
Using explicit “kernel:{kernel_id}” for kernel selection
Streamline print out messages
Added dependencies on
${SYSROOT}
and on ALL source files from./src/*
vitis:
counter and subtractor kernels running @ 500MHz (id=0 -> clk_out1_o1)
vadd_mm (vadd memory mapped kernel) running @ 250MHz (id=1 -> clk_out1_o2)
mm2s_vadd_s -> vadd_s -> s2mm_vadd_s (vadd_s streaming kernels) running @ 333MHz (id=4 -> clk_out2)
Disable ILA when building vitis with
export TARGET := hw_emu
Added
${SYSTEM_CFG}
as dependency for the Vitis LinkerAdded
${GRAPH_O}
as dependency for the vitis linker, since you need to perform extra steps to be able to remove this dependencyAdded
${LINUX_IMAGE}
and${LINUX_ROOTFS}
as dependencies for the vitis packager; and those are now taken from the software platform
general:
Improved dependencies in almost all
Makefile
s to ONLY rebuild what is needed to be rebuild after a modificationAdded following
[project-root]/Makefile
commands:make clean_vitis
to clean everything (ip, ps_apps, vitis) after the (fixed) platform for the specifiedTARGET
.make all_targets
to build everything for ALLTARGETS
.make ultraclean
to clean everything for ALLTARGETS
.make ultraclean_vitis
to clean everything (ip, ps_apps, vitis) after the (fixed) platform for ALLTARGETS
.
[project-root]/README.md
updated with all new featuresmake all
to build everything for the specifiedTARGET
.make clean
to clean everything for the specifiedTARGET
.
February 2022
petalinux:
Added the option LINUX_ETH_CONFIG to setup static Ethernet Configuration
ip:
Bugfix for the v++ linker to fail in TARGET=hw_emu when other HLS-kernels (like mm2s) are added later on to the design
general:
Adding the option to build for TARGET=hw_emu
October 2021
petalinux:
Improved petalinux version check
ip/aie:
Optimized AI Engine Datamovers
general:
Added more clarifications in the README.md
September 2021 - Initial Release
Copyright © 2020–2022 Xilinx, Inc
Copyright © 2022–2024 Advanced Micro Devices, Inc