feature article
Subscribe Now

Teaching them to Fish

Xilinx Expands Services

We’ll finally admit it.

Designing with FPGAs is hard.

We hear all the marketing pitches – you download the free software, plug in the development kit, push the sequence of “Go” buttons, and voila! The simulator plots out little waveforms. The synthesis tool thinks for about two seconds and says you met timing. Place and route successfully locates all six LUTs of the design and connects them together.  The bitstream blasts through the jtag port into your demo board.  You press the reset button.  There they are!  The blinking lights!  Congratulations! You’ve just completed your first FPGA design.  It couldn’t be any simpler than that, right?

Uh, yeah.

The thing is, you probably didn’t get into FPGA design so that you could add a traffic light controller to your company’s next product.  Chances are, they won’t even be impressed that you can make the LEDs blink in sequence.  Probably, you got into FPGA design because your company needed something added to the product that wasn’t available off-the-shelf as a pre-engineered chipset. 

The plot thickens.

If you’re going to make real, practical use of that FPGA, you’re probably going to be designing something quite a bit more sophisticated than a traffic light controller.  You’ll probably be pushing the envelope a bit.  You may be taking a DSP function that requires too much performance for a software implementation and implementing a high-performance, low-power parallel implementation using hard-wired DSP blocks.  You might even be dropping a processor, peripherals, and memory down on the FPGA, connecting them with an on-chip switch fabric or bus, and figuring out how to boot, debug, and tune the embedded soft-core processor to do your bidding. 

Once you’ve sorted your way through all that, you’ll probably find yourself using something other than the standard options on synthesis and place-and-route.  You may require several iterations to get satisfactory timing results.  VHDL and Verilog can also pose substantial barriers for the tourist…  The happy, friendly, “push the button” world of FPGA design can quickly degenerate into a formidable foe for the novice – even if you’re a highly experienced engineer.

Some companies have a couple of months available for you to sit in  your cube, run through all the tutorials, and come up to speed on the vagaries of real FPGA design.  They also have the patience to be flexible as you blunder through your first attempt or two with less-than-optimal results.  (This isn’t ASIC design where those blunders can cost millions in NRE).  If your company is like that – feel free to forge ahead on your own.

Other companies have no interest in growing FPGA expertise internally.  Perhaps the design you’re working on is the only FPGA they can foresee using over the span of the next several years.  If that’s the case, spending the time to become a black-belt FPGA master is probably a bad investment.  You (and your company) would be much better served by buying the services of a full-blown consulting company that specializes in FPGA implementation.  You’ll hand them your specifications and (what seems at the time like) a big check.  Before you know it, you’ll have a completed design back that does exactly what you had hoped – often better. 

There are several ways to get this kind of service.  A number of consulting companies provide exactly this kind of expertise – usually with long histories of successful projects for satisfied clients.  Those companies also often specialize in specific design areas, bringing not only expertise but IP and domain-specific experience to bear on your problem.  If you need a third-order franistan filter designed, and you contract with a company that’s completed four of them over the past six months, your consulting tab will be lower and your results will be better than if you sign up a company with generic FPGA expertise but no franistan experience. 

Another way to get a turnkey solution is by using consulting services directly from your FPGA vendor.  Xilinx has a service called Xilinx Design Services (XDS) that will essentially take over your FPGA design project and deliver you a working result.  XDS has design centers in the US and Europe, and they have a long track record of successful FPGA projects to their credit.  Xilinx says that XDS provides both design services and project management services and is ISO 9001 certified. 

The tradeoff with choosing an FPGA-vendor’s consultants requires a bit of thought.  The FPGA company has a vested interest in making you successful with their silicon.  They want you to get past the design stage and into volume production as quickly as possible so they can get on with the business of selling silicon.  They also have considerable expertise in their company’s products and tools.  This expertise is backed up by an “inside line” to the engineering groups that develop the products and tools, so they can most likely get answers and solutions that independent consultants can’t easily access.

On the flip-side, they may not have the kind of domain-specific expertise you can find in independent consultants.  If there is a company that specializes in the specific type of design you’re doing, that’s very hard to beat.  Also, the fact that the FPGA vendor’s consultancy is committed to making your project work with their silicon could turn out to be a liability.  An independent consultant might recommend another vendors’ part or a lower-cost or more effective solution if they are aware of one.  An FPGA vendors’ consultant is unlikely to make such a recommendation.

What if you don’t have the expertise to do the job you need, but you want your engineers engaged in the design process, and you want them to learn?  You may not want to buy turnkey engineering services, but you don’t want to strike out completely on your own either.  This is where Xilinx’s newly-expanded “Titanium” design services allow you to bring factory-trained Xilinx engineers into your project team and work with them to get your project done.  The advantages of this approach can be substantial.  First, your team gets the training benefit of working with an expert on their own project.  At the end of the run, when the design gets left with you for ongoing maintenance and support, you’ll understand a lot more about it than if you just took delivery at the end of a turnkey contract.

The programmable and re-programmable nature of FPGAs makes this idea even more attractive.  Often, the version of the FPGA design that ships with your product initially is just a first round.  Many companies evolve and improve the FPGA design in their product in the same way that they evolve and improve the software – offering field-installable upgrades to both software and FPGA for existing customers.  If you’re going to be upgrading the FPGA design over a period of several years with your product in the field, it pays to be involved in the initial design process so you know the ropes.

Xilinx says that Titanium engineers are experienced at design and are also trained instructors.  They are ITAR certified, can work on or off site, and are available for quick deployment if you’re on a tight schedule.  You can bring in the Titanium folks at just about any phase of your design project – so you can accomplish anything from what the company calls a “QuickStart!” to what we’d term something more like a “Diving Catch.”  The QuickStart! engagements often focus on specialized tricks-of-the-trade with Xilinx devices such as implementing Triple-Module Redundancy (TMR) for high-reliability designs to using specialized tools like “PlanAhead” for early floorplanning and even implementation of the dreaded and revered “partial reconfiguration.”

If you’re struggling with the idea of making an embedded system-on-chip design, there is a special “Embedded QuickStart!” program that includes a two-day on-site class plus three days of consulting from a senior applications engineer.  This program is ideal for getting past the fear factor of debugging software on a soft processor implemented in soft fabric.

This week, Xilinx is announcing a significant expansion of the Titanium program, including a dramatic increase in the number of available engineers.  If your project needs to get off to a smooth start, or if you’re deep in the woods and need some guidance finding your way out – this could be good news for you.

Leave a Reply

featured blogs
Aug 17, 2018
Samtec’s growing portfolio of high-performance Silicon-to-Silicon'„¢ Applications Solutions answer the design challenges of routing 56 Gbps signals through a system. However, finding the ideal solution in a single-click probably is an obstacle. Samtec last updated the...
Aug 17, 2018
If you read my post Who Put the Silicon in Silicon Valley? then you know my conclusion: Let's go with Shockley. He invented the transistor, came here, hired a bunch of young PhDs, and sent them out (by accident, not design) to create the companies, that created the compa...
Aug 16, 2018
All of the little details were squared up when the check-plots came out for "final" review. Those same preliminary files were shared with the fab and assembly units and, of course, the vendors have c...
Aug 14, 2018
I worked at HP in Ft. Collins, Colorado back in the 1970s. It was a heady experience. We were designing and building early, pre-PC desktop computers and we owned the market back then. The division I worked for eventually migrated to 32-bit workstations, chased from the deskto...
Jul 30, 2018
As discussed in part 1 of this blog post, each instance of an Achronix Speedcore eFPGA in your ASIC or SoC design must be configured after the system powers up because Speedcore eFPGAs employ nonvolatile SRAM technology to store its configuration bits. The time required to pr...