It’s freezing outside, but we are determined. We’ve got our sleeping bags, our unshaven faces, and our steely determination. We are occupying FPGA and demanding better tools. Is anyone listening? We represent the 99%!
Most people in the industry would tell you that there are three big electronic design automation (EDA) companies in the world. And there’s plenty of evidence to support them. Every industry analyst for the past 20 years has tracked the same old “big-3” EDA companies doing the same old “big 3” things. If you could look into the revenues and R&D expenses for those big 3 companies, however, I’m guessing that you’d find that the big 3 are spending most of their time and energy catering to about 1% of the world’s electronic engineers.
Huh? Only 1%?
By our estimates (and you’re free to make your own) about 1% of the engineers involved in electronic system design today are doing actual chip design. Everybody else (the 99%) is taking the chips designed by those 1% and building them into various kinds of systems – from smartphones to jumbo jets. That 1% is certainly important. Everybody depends on their silicon and systems-on-chip for the “magic ingredient” that makes today’s technology happen. Designing those chips is truly a monumental task – with development costs in excess of $100 million for just one of today’s cutting-edge technologies.
Providing the tools to make those chip designs go has always been the mainstay of the EDA industry. Sure, most EDA companies have other categories of tools available – like PCB design and layout. But if you look at the revenues – and more importantly, if you looked at the R&D expenses and effort – it becomes clear that not only is IC design the main focus of the EDA industry, but that without IC design there would be no EDA industry at all. Not as we know it, at least.
IC design puts extreme demands on EDA tools, and it takes just about all the engineering talent the big 3 EDA companies can muster (and then some, usually) to put together the increasingly complex tools required to enable state-of-the-art semiconductors to make it into production. With every new process generation, the incremental complexity of those tools increases and, with the increasing cost of chip design, there are fewer customers for those tools. Plot those trendlines off into infinity and you end up with the most complex tools in the world being supplied to one guy – who pays a pretty penny…
But we’re not here today to talk about the 1%. We’re here about the other 99%. FPGA companies have been putting out the word for a couple of decades that they have the “ASIC replacement” technology that the world needs. Can’t afford to do a custom IC design anymore? No problem. Just use an FPGA instead. FPGAs account for massively more design starts than all of the custom technologies combined. If you looked at the number of people either using FPGAs directly or designing parts of systems that contain FPGAs, you’d see that FPGA design permeates just about every hardware system on the planet.
What about FPGA tools?
FPGA design requires a tool flow very similar to that for custom ICs. You need some kind of system-level intent capture. Then, you need some way to create, edit, and simulate a design description – usually in HDL. Finally, you need implementation tools like synthesis and place and route to bring it all to reality. Today, you also need tools to create and debug the enormous amount of embedded software and firmware involved in those FPGA-based design projects.
Even though the tools for FPGA are almost like those for ASIC and custom ICs, they are just different enough so that you can’t use the same ones. It always looked like a straightforward play for the EDA industry to “tweak” their IC tools just a bit and they’d own the FPGA world as well. Many of them even tried. It just never worked. The EDA companies complained that the FPGA companies didn’t play fair. FPGA vendors would give away for “free” (or very close to it) tools similar to those that the EDA companies were trying to sell for a premium. As a result, (EDA claimed), the FPGA market developed an unrealistic expectation for FPGA tool pricing. IC tools that would sell for tens of thousands to hundreds of thousands of dollars were expected to be free or almost free in the FPGA space.
That, EDA companies claimed, is why they turned away from FPGA.
Today, with several small but notable exceptions, all of the FPGA tools in the world are supplied by the FPGA companies themselves.
There’s another side to that story, however. If you looked at FPGA companies for the past two decades, you’d see that the majority of their engineering investment has been in tool development. That’s right. Companies whose main products are chips, and who give away the accompanying design tool software almost for free – actually spend more time and money developing the software tools than they do the chips. Furthermore, if you’d looked at the number of engineers actively employed at FPGA companies developing tools for the past two decades and compared that with the number of people working on FPGA tools at all of the EDA companies combined – we guess you’d see about a 10x difference: – in favor of the FPGA companies.
This paints a somewhat different picture of why EDA never was very competitive in the FPGA game. They just never put in the investment required to be competitive. When the 3-4 companies providing the chips are out-spending you by a factor of 10 or so on FPGA tool development, you’re never going to capture a significant share of the market – barring a miracle, anyway.
That means that most of us – the 99% in our example – get our primary EDA tools, not from the “big 3,” but from the “big 2” – Xilinx and Altera. If you factor in all of the smaller FPGA and EDA companies, the picture doesn’t change much, either.
This is both good and bad news for the 99%. On the good side, focused tool suites are being aggressively built and maintained that work to make our path to working designs as smooth and easy as possible. FPGA companies want us to get to volume orders quickly, and we can’t do that if we’re stuck messing around with our tools.
On the bad side, those tool suites are purposely built to lock us into a single vendor. In that context, there is no competition in the tool front. Since we don’t pay much if anything for the tools, we have diminished capacity to complain or to get attention and change in the tool arena. If the tools aren’t so bad that we’re willing to jump ship and go to a completely different FPGA supplier, we’re basically at the mercy and whim of the FPGA company. FPGA tools are not designed to be plug-and-play, either. If everything works for you except place-and-route, you’re basically screwed. You can’t bring in the alternative just for that one component. You have no safety net.
We’ve argued before that this huge investment and dependence on tools makes FPGA companies actually EDA companies in disguise – just with a different model for realizing revenues from their tools. Since FPGA companies are fabless, we already acknowledge that they don’t make chips. Increasingly, the primary differentiators between FPGA suppliers are in their tools and IP, and those are exactly the same places that the value and differentiators exist for EDA companies. If, in fact, FPGA companies are EDA companies – Xilinx and Altera would easily place among the “big 3”. If we ranked EDA companies based only upon the number of engineers actually actively working on tool development, they’d be doing pretty well already.
One of the reasons EDA worked as a stand-alone industry for IC/ASIC design was economy of scale. In the 80s and 90s, there were dozens of ASIC houses providing IC design services to the world. An EDA company could develop one set of tools that could span that entire industry and could therefore take advantage of economy of scale to gain a compelling advantage over tools developed by the silicon vendors themselves. In FPGA, however, that economy of scale advantage never existed. With two companies dominating the FPGA business, and three companies dominating EDA, the economy-of-scale advantage actually tipped toward proprietary tools from the FPGA side. The EDA companies’ lack of investment and commitment to FPGA just finally sealed that deal.
Are we, the 99%, getting the tools we need and deserve? Certainly not. EDA is supplying the fur-lined, gold-gilded, jewel-encrusted luxury tools for the industry’s high-flying elite. The rest of us get to fight over table scraps of the technology that dribbles down into the FPGA vendors’ development plans. With no huge tool market at stake, however, don’t expect any high-risk, high-reward tool efforts in the FPGA market any time soon. That’s just not the world we live in.
8 thoughts on “Occupy FPGA”
An odd confluence of conditions has left us with FPGA companies providing sophisticated EDA tools for a majority of the world’s designers. Do you think that today’s FPGA tools are adequate? Who should be providing better ones?
Device independent design often requires the user to learn another tool. A layer above the vendors’ place & route tools. We try to make ours as simple as possible, leveraging off of common C constructs, but it remains another hurdle. Also, the additional layer reduces the back-annotation possibilities.
The place & route down to the FPGA gates may be intrinsically done best by Altera or Xilinx. We do not see that changing due to the increasing complexity of the devices, and the time to market it requires a third party to create equivalent results as an outsider. Thanks for starting this dialog — I am eager to see other replies.
We know that the FPGA companies have no incentive to provide device independent tools, so they won’t come from that direction. We also know that the EDA companies aren’t going to provide them and if they did they would do so at expensive “BIG EDA” prices; prices that are bloated with BIG EDA’s huge sales and marketing overhead.
What are the alternatives? Well, in the software development space most of the tools used for software development these days (compilers, editors, debuggers) are open source. They’re free. We’re talking world class software development tools that are completely free. So is the answer open source FPGA tools? Yes and no. The problem of course is that the FPGA companies don’t want their customers to easily switch so for that (and various other reasons) they keep their bitstream formats proprietary. And if you read the licencing agreements you agree to when you use their tools and parts, if you try to reverse engineer these formats they’ll sue you and get your house.
So we’d like open source tools that would allow us to do FPGA development. But it seems like the only way it could work is if we had an open, multi-vendor supported FPGA architecture. A lot of the basic patents on FPGAs are expiring right about now. Other semiconductor makers who didn’t get in on the FPGA market may want to start looking at getting into the market. And perhaps a consortium approach would work where the architecture is open and multiple vendors fab the parts? Then with an open FPGA architecture we could get open tools. Eventually Xilinx and Altera would have to play along… I can dream anyway.
Even with huge repertoire of tools each equipped with sophisticated capabilities, the BIG 3 are not able to provide complete solution to their customers. The customers of “BIG 3” still maintain “Design Automation” teams to fill in the gaps. This is because the circuit and system design is a heuristic process; it can’t be replaced with formulae.
You’ve neglected to acknowledge the tool providers beyond the “Big-3”. EDA has a large ecosystem of providers whose tools are not “fur-lined, jewel-encrusted” etc.
Some have been around for 25 years, with 30K users, and deliver just the right functionality – and ONLY the right functionality – to designers. Making them less expensive than the Big 3 and much more useful for – and used by – “the 99%”.
Kevin, as Product Manager for an FPGA design tool that invests heavily in R&D to make sure every vendor is equally supported for our users – I’m am glad to see you starting this conversation about vendor independence. You’re right, designers should be demanding more.
Our tools are also better suited for FPGA designers than FPGA tools in terms of debugging features, plus our flow manager allows users to interface and switch between vendor tools anytime they want – this is true vendor independence.
Here’s our recent ChalkTalk on vendor independent IDE that covered all of these points if your readers want to take a look https://www.eejournal.com/archives/on-demand/2012102201-aldec/.
@JaniS, @JohnZ, @brian,
I agree completely. There are certainly many ‘non-big-3’ EDA vendors doing a great job contributing critical capabilities to the PCB and FPGA design flows used by the majority of the engineering world. Aldec, Altium, Impulse, Tanner, Zuken – and many more.
The core of the FPGA implementation flow, however, seems to be fairly locked in for the FPGA companies. The only notable exception there is Synopsys/Synplicity maintaining a decent beachhead on the synthesis front. For place-and-route – nothing as far as I know. So – for a full flow my only real option is the FPGA companies themselves.
What about MathWorks?!
Aside of the MATLAB HDL Coder that you have called “a relative bargain in the world of automated algorithm-to-hardware tools” https://www.eejournal.com/archives/articles/20120306-mathworks …MathWorks HDL Coder provides a workflow advisor that automates the programming of Xilinx and Altera FPGAs, and allows verification via connections to the leading EDA tools if you have them.
And given it is a shameless marketing plug – did you know that you can buy a complete HW/SW Xilinx FPGA turnkey package including MathWorks products from Avnet for $14K:http://www.em.avnet.com/en-us/design/drc/Pages/MathWorks-Turnkey-Pa…
The 99% should love that!