Our project HDMI2USB which is being prototyped on the Atlys board currently has a FX2 firmware which is open source but uses the proprietary libraries provided by Keil/Cypress. We'd like to replace it with a 100% open solution.
Currently the firmware is pretty dumb, ideally we'd like any new firmware to do the following;
Start up and use JTAG to probe connected FPGA for "Device DNA" information, use for usb serial number in descriptors (too allow differentiation between multiple connected boards).
Use JTAG to check the FPGA contains our HDMI2USB firmware.
If contains HDMI2USB firmware, boot in HDMI2USB mode.
If doesn't contain HDMI2USB firmware, boot in libfpgalink compatible mode to allow programming the FPGA.
I think for this reason it would be good to start from the libfpgalink FX2 firmware and extend it with our extra additions.
Couple of questions;
I'm pretty sure you don't want to include this in the stock libfpgalink firmware so was wondering how we can stay in sync with your changes / improvements while still maintaining our additions?
The libfpgalink firmware seems already be pushing the limit of 8k (as enabling debug seems to mean it doesn't fit?). Is there any optimisation that can be done to reduce the footprint?
The firmware is normally drive by the host for doing JTAG operations, what is the best way to figure out the right commands for doing given JTAG operations so they can be added to the firmware? (I'm just thinking of just putting some logging in libfpgalink.)
Hi,
Our project HDMI2USB which is being prototyped on the Atlys board currently has a FX2 firmware which is open source but uses the proprietary libraries provided by Keil/Cypress. We'd like to replace it with a 100% open solution.
Currently the firmware is pretty dumb, ideally we'd like any new firmware to do the following;
I think for this reason it would be good to start from the libfpgalink FX2 firmware and extend it with our extra additions.
Couple of questions;
Our alternative option seems to be using the FPGA4U variant of the urjtag code found at https://fpga4u.epfl.ch/wiki/FX2
Thanks for any advice.