I have no prior experience with Pynq. I have now decided to try it on a design in ZCU208.
I have uploaded and loaded a bitstream overlay into the FPGA. I have connected via JTAG to the board, I see debugging ILA cores, but I cannot obtain data because the LTX file is missing - I used to upload it together with the bitstream. How does it work in the case of Pynq, and how can I obtain data from the ILA?
You load this file in Vivado. It interprets data read back from the board and formats it with signal names.
You don’t need to upload the LTX to the board.
There are two ways you can use the ILA with PYNQ.
- Download the bit from Vivado, then in PYNQ use
Overlay("filename.bit", download=False)so you don’t download it again.
- Download the bit from PYNQ and in Vivado refresh to see the ILA cores.
I have already tried it, but with not success:
This is the experience that I have, maybe it can help.
Based on what did I experienced, after downloading the bitstream with overly, it is possible to program the FPGA bitstream also with Vivado, and it doesn’t stop the PYNQ. So, this is what did I do:
Run the overlay in the PYNQ:
Ol = Overlay("filename.bit")
then I programmed both bitstream and LTX file from Vivado.
then run the rest of your code in the pynq.
actually you should divide and run your PYNQ code in two different sections.
one is overlay that must before programming with Vivado, and the second section is the rest of your code.
because after programming the bitstream with Vivado, the setup of FPGA and PL part will reset.
I was able to see the ILAs and PYNQ was also doing the normal routine.
1- run overlay command
2- program with Vivado
3- run the rest of your PYNQ code
hi！ i am confused with “then I programmed both bitstream and LTX file from Vivado”, can you share a case or toturials？ my pynq overlay can work well ，i just want to see the wave to decode the data flow.
Thanks a lot! It works perfectly!
Happey to hear that!