cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Newbie
Newbie
6,624 Views
Registered: ‎06-14-2013

Zynq ZC702 - Programming FPGA after SD card or QSPI Flash boot

Hi,

 

I'm currently trying to figure out how to program the FPGA after a non-JTAG Linux boot.  In the UG873 14.5 CTT guide http://forums.xilinx.com/xlnx/attachments/xlnx/zingboard/11/1/ug873-zynq-ctt.pdf (p. 66) it mentions that the Zync PS will become unresponsive after programming the FPGA once Linux has already booted (which it does for me after an SD card or QSPI Flash boot).  The guide then links an answer record 55150, which seems to not exist anymore.  Does anyone know how to program the FPGA with a bitstream after a non-JTAG boot? 

 

I've looked around and have not found a clear answer to this problem.  If it helps, when I was investigating using "cat proc/mtd" I found that there was a listed "qspi-bitstream" as a mtd4 device, and I'm thinking that this could lead to a possible solution.

 

Thanks!

0 Kudos
4 Replies
Highlighted
Xilinx Employee
Xilinx Employee
6,613 Views
Registered: ‎03-13-2012

Re: Zynq ZC702 - Programming FPGA after SD card or QSPI Flash boot

A bitstream can be programmed at any stage during boot.

 

1. Include the bitstream in your boot.bin. In that case the FSBL will program the PL (I don't have a link to instructions for this case, but I assume it's covered somewhere).

 

2. Program the PL from U-Boot: The wiki has a guide which can easily be transferred to QSPI-, SD-, ... boot scenarios: http://www.wiki.xilinx.com/Zynq+AP+SoC+-+Programmable+Logic+Configuration+via+Ethernet

 

3. Program the PL from Linux: In Linux you can simply cat a bitstream to /dev/xdevcfg to program a bitstream. Though, as in the U-Boot case, the bistream needs to be provided in a specific format. Please refer to the wiki guide above for instructions to convert the .bit file.

More info on this option:

http://forums.xilinx.com/t5/Embedded-Linux/Zynq-Loading-bitfile-into-FPGA-from-Linux-xdevcfg/m-p/237856#M4060

http://forums.xilinx.com/t5/Embedded-Linux/linux-user-space-bistream-loader-example-for-ZYNQ/m-p/262354#M4667

 

0 Kudos
Visitor
Visitor
6,369 Views
Registered: ‎05-24-2012

Re: Zynq ZC702 - Programming FPGA after SD card or QSPI Flash boot

Hi Sorenb,

  For the 2nd method you mentioned that PL could be programmed by U-boot from a TFTP server. I think there should be a Ethernet between TFTP server and target board. But how does the ethernet  exist before the PL is configured from TFTP server? Thank you.

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
6,364 Views
Registered: ‎03-13-2012

Re: Zynq ZC702 - Programming FPGA after SD card or QSPI Flash boot

1. Ethernet is just an example for how to move a bitstream into memory, so U-Boot can program it into the PL. You could hold the bitstream on any other supported storage and load it from there into memory and program it.

 

2. Zynq is a full bown SoC with a lot of hard IP blocks. Amongst others two ethernet blocks. You can use all PS features w/o even touching the PL. There is no dependency on any bitstream in order to use PS Ethernet.

0 Kudos
Highlighted
Visitor
Visitor
6,358 Views
Registered: ‎05-24-2012

Re: Zynq ZC702 - Programming FPGA after SD card or QSPI Flash boot

Hi Sorenb,

  Thanks. I get it.

0 Kudos