The other day, I was reading Joel Spolsky's blog post about product compliments.  Joel states that, "Smart companies try to commoditize their products' compliments."  The compliments of a product are the other things that people buy with that product.  For example, operating systems and software compliment PC sales.  When you buy a PC, you'll also probably buy an operating system (even if it comes with the PC) and some software.  In this case, the software vendors want to sell you software, so it's their prerogative to make PCs into a commodity such that the price is as low as possible.  For the most part, this has happened.

One interesting side effect of thinking this way is you start to look at other companies and industries and notice how they're not doing this at all.  Like in FPGA land.  Really, there's the two big players: Altera and Xilinx.  Neither of them is trying to commoditize their products' compliments, and for what it's worth, I can't tell which product they sell is the product and which is the compliment.

With FPGAs you really need two things: the physical part and the software to realize a design.  In either case, both Altera and Xilinx will charge you.  You have to pay for the parts (which are really expensive if you buy them from online retailers like DigiKey but are much more reasonably priced direct or from distributors in volume) and you have to pay for the synthesis software!  Some will argue that you don't have to use just Altera's or Xilinx's synthesis software, other vendors will sell you software that will work, but that software isn't cheap either.  (For the companies selling just synthesis software, the physical chip is the commodity compliment, which kind of works, but not well enough.)

If you assume that Altera and Xilinx want to sell you physical chips, they should be driving the synthesis software to be a commodity and be low priced.  If they want to sell you software, they should be working to make their chips as commodity like as possible (easy to switch from one company's chips to the other).  But they aren't doing either of these things!
Yes, you can get free versions of Altera's and Xilinx's tools, but those tools are limited and "real" FPGA designers will probably need the full version of the tools.

So what's my point?
My point is the FPGA landscape is F'ed up.  They're missing out on gaining new customers who are very price conscious (like hobbyists or bootstrapped start-up companies) but need advanced features in the synthesis software.  There's going to be a huge market out there for hobbyist type development for FPGAs soon (if it hasn't started already) and both Altera and Xilinx are going to miss out on it.

I predict that as soon as there's an open source / free software program that can do decent FPGA synthesis, both Altera and Xilinx are going to feel the pain.  I also predict that one of those little FPGA companies are going to reap huge benefits, because they'll be the ones behind it.



27 February 2011