cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
570 Views
Registered: ‎10-14-2018

Query on QEMU on Zynq7000 and ZynqMP

Hi,

I am currently learning to use QEMU for validation of a simple read & write application in zc702. I have completed the following steps:

a) created .bd file in Vivado with Zynq PS having only bram_memory_generator to perform read/write operation.

b)generated bitstream and imported .hdf to Xilinx SDK tool

c) created an application (c-code) to WR data and obtained .elf file

d) launched QEMU emulator using command line. I have downloaded only the .elf file using QEMU command. No data has been written/read back from PL side. The output is shown in the attached screenshot. 

I am not sure whether the .elf file is a composite bitstream (i.e s/w application + bitstream).

 

1)  Does QEMU support configuration of Programmable Logic (PL) portion of Zynq7000/ZynqMP or only the PS portion of the SoC?

2) If yes, how to download the <test>.bit (bitsream) in QEMU?

 

Kindly share information to resolve this issue, shown in screenshot.

Thanks & Regards.

 

 

 

  

sample WR qemu output.PNG
0 Kudos
7 Replies
Highlighted
Contributor
Contributor
367 Views
Registered: ‎03-29-2019

Re: Query on QEMU on Zynq7000 and ZynqMP

hello @rashmi.ms19  , I have the same issue here , did you solve the problem ? can you whow me your design and application in vivado and sdk , so we can try to solve this ?

0 Kudos
Highlighted
Moderator
Moderator
357 Views
Registered: ‎09-12-2007

Re: Query on QEMU on Zynq7000 and ZynqMP

You cannot program the PL in QEMU. The QEMU will use the devicetree and emulated models to emulated your system. 

0 Kudos
Highlighted
Contributor
Contributor
340 Views
Registered: ‎03-29-2019

Re: Query on QEMU on Zynq7000 and ZynqMP

hello @stephenm  , thanks for your answer , as i understand from what you say , steps :

-Doing the design through vivado

-Doing application using sdk , and generating the HDF ( which contain the device tree)

-then using HLS to generate SystemC

-Using the Libsystemctlm into my project 

is that right ?? 

and when you say  the qemu use the device tree ? the device tree by default come with my description hardware generated in sdk or should i build manually that device tree ? other question the libsystemcsoc is usefull for any project or its just for the demo showin by xilinx , thanks a lot @stephenm 

0 Kudos
Highlighted
Moderator
Moderator
329 Views
Registered: ‎09-12-2007

Re: Query on QEMU on Zynq7000 and ZynqMP

What are you trying to achieve with the QEMU?  For example, if you are designing a custom RTL IP, and want to test this, then you woould use the co-simulation to see how tis would preform in your system. You could also just use the verification IP in Vivado to test traffic to and from your IP.

However, if you want to test your application on a SoC, then you wouldnt really need to co-sim.

So, it really depends on what you are trying to test, and to set up a test environment that best meets your needs.

With respect to the devicetree, there is a DT for the Machine (use the default), and then one for your embedded system. For this one, you can create this using the DTG (devicetree generator) using your HDF as an input.

 

Ref: https://www.xilinx.com/support/documentation/sw_manuals/xilinx2018_2/ug1169-xilinx-qemu.pdf

Highlighted
Contributor
Contributor
323 Views
Registered: ‎03-29-2019

Re: Query on QEMU on Zynq7000 and ZynqMP

Thanks for your information , i am working on cosimulation , as it is mentionnated in user guide of QEMU , QEMU just emulate the PS part , so if i do a design with PS and PL , and an application , i should use cosimulation to let the PS cnnect to PL to enable ports for example , i found thati have to use SystemC-tlm  which is given by Xilinx in the libsystemctlmSoc , but i just want to know if that library support any project or its just for the example demo of xilinx, then can you told if steps below are right or i have to do other thing :

for example lets say am doing a read/write between PS and PL (BRAM) through Axi interconnect:  steps:

1- Vivado degin   2-application sdk   3- generating systemC for the design using Hls  -integrate the libsystemtlm to my project  - using qemu with .elf application ?

and should i put my hdf design or lets say the systemc generated for the design there is a way to put it as argument to qemu or integrate it into the libsystemtlmsoc ???

sorry i make a lot of question but i really need a help and have no much time , thanks a lot 

0 Kudos
Highlighted
Contributor
Contributor
320 Views
Registered: ‎03-29-2019

Re: Query on QEMU on Zynq7000 and ZynqMP

My project is about cosimulation , emulating the SW and HW together , first i have to validate this by a simple design using ZynqMpsoC Ps and a simple design , and after i will use this in order to do cosim for Zynq ultrascale + RFSOC  in order to get data signals without having a board , i have no board and my project oblige me with this method 

0 Kudos
Highlighted
Moderator
Moderator
250 Views
Registered: ‎09-12-2007

Re: Query on QEMU on Zynq7000 and ZynqMP

0 Kudos