Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm not sure why this meme is constantly repeated - the modern tools are not terrible. I guess it underscores how difficult it is to shake a bad first impression - ten+ years ago they were very poor, but today they are very impressive. In fact the FPGA based design tools are much better than ASIC based HW design tools.

You are right about underlying architecture and synthesis engines being closed source, but that does not necessarily make a tool bad. There is a strong drive to have the tools confirm to industry standard interfaces for sharing of designs and IP now (IPXact, SDC-constraints, Oopen-CL/Open-CV, etc).

FPGAs are more difficult to use than Rpi / Beaglebone, but that's because HW design is very different. They can be used to run SW only stacks (e.g. linux), but that's somewhat missing the point as FPGAs are all about programmable hardware - creating custom accelerators, doing things you simply cannot do efficiently in SW. So low-frequency things like home basic automation might not be a good fit as that can be done in SW only.



It's really not a meme that the tools suck. They still suck. They suck a lot less than they used to but they still suck. The latest version of Vivado still doesn't properly support basic constructs of systemverilog [1]. That doesn't fly in the world of software engineers.

The compile times are still in the order of hours, and there's no guarantee that you won't get to the end of your compile and find out either it didn't work, or it did something that you couldn't possibly have meant to happen. You don't know what went wrong because you've got a 27MB log file 97% of which is 'WARNING's.

[1]:https://www.xilinx.com/support/answers/55135.html


Perhaps it's the case that EDA sucks full stop. I think in the general case that's true, but FPGA based EDA tools, by and large, are better than ASIC EDA tools, and much better than any open-source tool available - and they are essentially free. If you've every used the ASIC tools design-compiler or primetime, you'd see what a difference tools like Vivado have brought in terms of design visualization, ease of use, robustness, all while still being compatible with the industry standard constraints and file types, etc.

The list of unspported items you showed is interesting but I'd imagine they rarely affect HW design and are more on the testbench / simulation only subset (except maybe arrays of interfaces).

For any HW design I've done Vivado has been well able to handle it. In fact, I've used Vivado to 'sanity check' RTL thats intended for an ASIC flow.

Runtimes are long, but I guarantee if you look at the runtime of any opens source synthesis tool you'd get an order of magnitude worse, with worse results. The FPGAs these tools are handling are also huge compared to ten years ago, so while they have progressed in a direct comparison, it looks like they have not if you're later devices.

The one bugbear I have is that DRCs are not checked as early as possible, and only at the end are some things flagged, like and unconstrained IO port. Things that can be caught earlier should be, in all cases.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: