Hello,
I am to use AXI UART16550 IP connected with ZYNQ7 PS to do some examples created by Xilinx in their software program Vitis: https://github.com/Xilinx/embeddedsw/tree/master/XilinxProcessorIPLib/drivers/uartns550
The main problem is I don't know how to add these examples to Vitis... The bitstream in Vivado has been created, and the platform project has also been created. All that is left is to add the code to Vitis.
@arminb73 The main problem is I don't know how to add these examples to Vitis..
What do you mean by this?
Vitis is just a unified software from Xilinx which as several sub-parts.
Do you want to write the software targeted for the Zynq that will exercise the UART IP core?
@arminb73 The main problem is I don't know how to add these examples to Vitis..
What do you mean by this?
Vitis is just a unified software from Xilinx which as several sub-parts.
Do you want to write the software targeted for the Zynq that will exercise the UART IP core?
the first thing that you should to do is to check in your block design the memory map of your components in it - this values will be eksported to SDK (and then in software for PS). Vivado 2019.1 is the last wich have Xilinx SDK - the SDK is simpler to use comparing to Vitis. So maybe it is not stupid to make your block design in Vivado 2019.1 and then later write software in SDK. In the series of tutorials for wich I gave link it is exactly explain how to write software for block design in SDK. I\ didn;t use Vitis so far, but it looks similiar to SDK. Probably you should make "First Stage Bootloader" project for Zynq then load the bitstream an FSB to hardware (your FPGA board). The second stage is to make your software for PS (if there is "hello World" example just choose it. The first thing in software is initialization of PS, and then programing data exchange beetwen PL and PS. Writing software for PS is usually reading and writing proper values to used components registers - it is next to impossible to write it without study documentation.
the first thing that you should to do is to check in your block design the memory map of your components in it - this values will be eksported to SDK (and then in software for PS). Vivado 2019.1 is the last wich have Xilinx SDK - the SDK is simpler to use comparing to Vitis. So maybe it is not stupid to make your block design in Vivado 2019.1 and then later write software in SDK. In the series of tutorials for wich I gave link it is exactly explain how to write software for block design in SDK. I\ didn;t use Vitis so far, but it looks similiar to SDK. Probably you should make "First Stage Bootloader" project for Zynq then load the bitstream an FSB to hardware (your FPGA board). The second stage is to make your software for PS (if there is "hello World" example just choose it. The first thing in software is initialization of PS, and then programing data exchange beetwen PL and PS. Writing software for PS is usually reading and writing proper values to used components registers - it is next to impossible to write it without study documentation.
You conclude by saying that writing software for PS involves reading and writing proper values to used component registers. I am fairly new to C, and I know that registers are found using their addresses, but I'm not sure how to get to this register, and if I do, what can I achieve by changing some bits in it? Having trouble understanding the different capabilities of IPs, such as AXI UART16550
You conclude by saying that writing software for PS involves reading and writing proper values to used component registers. I am fairly new to C, and I know that registers are found using their addresses, but I'm not sure how to get to this register, and if I do, what can I achieve by changing some bits in it? Having trouble understanding the different capabilities of IPs, such as AXI UART16550
@arminb73 The main problem is I don't know how to add these examples to Vitis..
What do you mean by this?
Vitis is just a unified software from Xilinx which as several sub-parts.
Do you want to write the software targeted for the Zynq that will exercise the UART IP core?