4 ms·
I've found there's a fundamentally different attitude among FPGA engineers compared to software engineers for better or worse. I think the "vendor tools are go
by MSFT_Edging 1y ago
I've found there's a fundamentally different attitude among FPGA engineers compared to software engineers for better or worse.
I think the "vendor tools are god" attitude is overall negative. The vendor tools ARE leagues better than the open source alternatives, but it doesn't mean the open source stuff is just for toy projects.
For example, Vivado is a monolithic pain in the ass. If I want to use an FPGA as electrical super glue for a project, I don't want to be downloading 150GB onto my machine. I think the open source tooling is particularly useful for smaller projects, and the general attitude towards the tooling is really frustrating.
The research that has gone into the RE the bitstream structure and the overall structure of FPGA fabric is extremely impressive. Vendor IPs are often bloated to get you to buy the bigger chip, where open source IPs take up much less of the fabric.
There's give and take but from my perspective a big problem is the tooling.
- johnecheck 1y agoThe parent comment made it sound like vendors intentionally withhold information to limit how well the open source competitors work. Is that happening? If so, it's a clear barrier to OSS adoption/contribution. A shame.
- cushychicken 1y agoThey certainly do withhold information. See my other comment for my speculation as to why. I suspect it has nothing to do with the OSSW community; they give their software tools away.
- thrtythreeforty 1y ago100% yes. The actual format of the binary that the device interprets is treated as a trade secret, and the vendor tooling is the only documented way to target code at those parts. This has various implications, such as smaller FPGAs being literally tooling-locked versions of larger ones, important features like partial reconfiguration being supported by the hardware but a huge pain to use from the logic, or vendor tools not supporting some language construct and you're stuck with that tool. (Admittedly they are far and away better than FOSS tooling for language support.)
- cushychicken 1y ago> The vendor tools ARE leagues better than the open source alternatives, but it doesn't mean the open source stuff is just for toy projects It’s not a question of developer experience. We heartily agree that using Vivado sucks. My point is that there’s no way around using Vivado (or the Altera equivalent) if you want to use the most useful parts of modern FPGAs. It’s simply not possible to do things like access the GTH transceivers or custom MAC blocks using open source FPGA tools. These are table stakes capabilities to make these chips useful. You can only use vendor tools to access them. I suspect - but cannot prove - that Xilinx has agreements with IP vendors about how much they are allowed to reveal about the guts of the different devices they integrate into Zynq family die. I also suspect that Xilinx has considerable intellectual property investment into the underlying architecture of their PL. Making 600MHz programmable fabric is no mean technical feat. Open sourcing their tools is probably something they judge a risk to revealing those technical advantages.