Firmware Update for Zynq-7000 QPSI from processor on Custom Hardware

Job ID: 39138675

Budget: £750 – £1,500 GBP

We have custom hardware featuring an AMD Zynq XC7Z007S-2CLG400E FPGA with ARM core. Code is stored in a QSPI Flash (IS25LP128F-JKLE). This device is currently only programmed via the JTAG connection during development and production.
The only external communications channel from the sealed device is a 100Mbps Ethernet. We require the device to be programmable via that Ethernet connection.

Requirements

The solution provided by the freelancer will program the FPGA and ARM code in the flash such that the new code runs on reboot.

• The flash programming code can be part of the core code or the FSBL. Solutions to be discussed.
• If the code is part of the core code, it must be shown to fail in a recoverable way.
• Transmission of the code from PC to the device via Ethernet can be done as part of the project, or by the client, with discussion with the freelancer.
• Instructions for preparing the output of Vitis into the file required by the flash will be provided by the freelancer.
• Source code to complete the task will be provided to the client, and support provided for incorporating into the existing code base.

Schematics for the relevant parts of the FPGA/Flash PCB will be provided.

Skills Required
• Familiarity with Zynq 7000s FPGAs, Vivado, Vitis.
• Familiarity with QSPI Flash programming.
• Experience with Zynq-7000 bootloader and firmware update processes
• Proficiency in C
• Ability to communicate the workings of the source code to the client in English.

Timeline
• 2-4 weeks.
Related categories: C Programming Embedded Software FPGA