How can I use a custom board with the Zynq workflow provided by MATLAB/Simulink?

28 views (last 30 days)
MathWorks offers an integrated workflow for targeting Zynq platform using HDL Coder and Embedded Coder. The currently supported boards are Zedboard, ZC702, ZC706, ZCU102.
However, I am using a board based on Zynq that is not supported by MathWorks (e.g. MicroZed, PicoZed, Arty), or a completely custom-made board. How can I use a custom board with the Zynq workflow provided by MATLAB/Simulink?

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 14 Feb 2024
Edited: MathWorks Support Team on 21 Dec 2022
To use your custom board with our full Zynq hardware/software codesign workflow, you will need to complete the following tasks:
1) Build a custom Linux image from the MathWorks Buildroot GitHub repository, as explained in the following MATLAB Answers post: https://www.mathworks.com/matlabcentral/answers/880703-how-can-i-create-a-custom-linux-image-for-my-custom-board-to-use-the-zynq-workflow-with-matlab-simul
2) Obtain the board files from the vendor to register your board part in Xilinx Vivado tool.
3) Create a custom reference design in Xilinx Vivado tool, and export this block design to a TCL script.
4) Create all necessary plugin and definition files to register your board & reference design files with HDL Workflow Advisor in MATLAB.
NOTE: The above tasks are outside the scope of MathWorks Technical Support. What HDL Coder provides is the capability to allow you to import the custom Vivado design into HDL Coder workflow, and define a custom Reference Design, so HDL Coder can generate an IP core and insert it into the custom Reference Design for faster design iteration.
MathWorks Consulting Services may be able to assist with these tasks: https://www.mathworks.com/services/consulting.html
Refer to the following simplified example which sets up a Zybo board for our Zynq workflow (using a prebuilt Linux image, vendor-provided board files, and the existing Zynq processing system preset TCL file to create the reference design in Vivado):

More Answers (1)

fgao
fgao on 5 Jan 2024
Another option to support custom board based on Zynq 7000, MPSoC and RFSoC chips is the customization APIs/tools provided from SoC Blockset product. You will get same feature set support as ZedBoard, ZCU102, etc…on your custom board using these APIs/tools. Below are the customization related examples:
  1. Custom board support: Using a Custom Board with SoC Blockset
  2. Custom HDL IP support: Import Custom HDL IP into SoC Blockset Design
  3. Linux image customization support: Customize PetaLinux Image for AMD Xilinx Devices

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!