return 0;
}
All work fine with the full bitstream. I just create a hier block and create partial definition in vivado. I program the FPGA with a partial bitstream the accelerator becomes unresponsive (ap_start stays at 1 and there is no output).
ip = overlay.test
ip.write(0x00, 0x1)
isready = ip.read(0x00)
while (isready == 1): # wait PL to finish
isready = ip.read(0x00)
isready is always 1. My situation is similar to this question, but no one answer yet.
The Dynamic Function eXchange (DFX) AXI Shutdown Manager can be used to make the AXI interfaces between a Reconfigurable Partition and the static logic safe during dynamic reconfiguration. When active, AXI transactions sent to the Reconfigurable Module (RM), and AXI transactions emanating from the RM, are terminated because the RM might not be able to complete them. Failure to complete could cause system deadlock. When inactive, transactions are passed unaltered.
pr = overlay.dfx_decoupler_0
pr.write(0x00, 0)
pr.write(0x00, 1)
overlay.pr_download(‘hier_0’, ‘partial.bit’)
pr.write(0x00, 0)
ip = overlay.hier_0.test_0
…
But it doesn’t work.
And for dfx axi shutdown manager, if I use that IP core, should I also include a dfx controller? And how do I control that IP in pynq?(just read and write the control register of the dfx controler?) Thank you very much!
We use the DFX AXI Shutdown manager in all of our base overlays, but not for partial reconfiguration. The code we use to control it is in one of my comments above.
We do not have an example of this with partial reconfiguration.
I try to control but I am not sure if it is correct. (I write 0x00 to 1 before download partial bitstream for shutdown manager and write 0x00 to 0 after I download partial bitstream for shutdown manager.)
Thanks, I will also try to ask in the Xilinx forums.
Could you give me a hint about what is in 0x04. I changed hw design a little(switch dfx decoupler to dfx shutdown manager) and tried today and I just read 0x04. It is 0 or 15. now the program will not stay in while loop but results are wrong ( always 0)
Or I extend a bit why I had asked these questions before even start cont’d PYNQ implementations.
The supporting ground of PYNQ is critical for designer or engineer to know what we can do or we cannot do on PYNQ 2.7 2020.2.
Meantime, don’t even confused by the Composable Overlays concepts!