feature article
Subscribe Now

How Many Times Does CPU Go Into FPGA?

It’s déjà vu all over again. An FPGA company is embedding a 32-bit microprocessor into its FPGAs and calling it a “programmable system on a chip.”

Whoa, dude. Nasty flashback, huh?

Didn’t we just see Actel do this with its SmartFusion chips? And didn’t Altera try this back in the day with Excalibur? And doesn’t Cypress make pSoC devices that look just like that? And – hey, wait a minute! – didn’t Xilinx already try this once before?

Guilty on all counts. The CPU-with-FPGA mashup is apparently such a compelling concept that no one can oppose it. Resistance is futile. One chip vendor after another is held in thrall, mesmerized by the wondrous rewards just out of reach. But the Sirens’ song has caused more than one vendor to crash against the rocks of engineering reality. Embedded designers just don’t like FPGAs with CPUs inside. 

If at First You Don’t Succeed…

As Dick Selwood wrote in FPGA Journal (“A Platform to Bridge a Gap?” May 4, 2010), Xilinx is coming back to the table for seconds – of abuse, perhaps. Or maybe to right ancient wrongs. Either way, the company is peeling back the layers of disclosure on a new product family coming out late next year. The new chips (which don’t have an official brand name yet) will combine Xilinx’s familiar FPGA fabric with ARM’s equally familiar microprocessors. Yes, we’ve seen this combination before. We’ve even seen it from this company before. But this time it’s different. Really.

Here’s what we know: the new chips will combine two ARM Cortex-A9MP microprocessor cores onto a single chip, along with various amounts of programmable FPGA fabric. The FPGA logic and the CPU will be programmable separately. FPGA configuration will be handled by the processor(s) directly, not by a serial ROM or other automatic method. In other words, you have to tell the FPGA you want it configured. That’s very un-FPGA-like.

Xilinx didn’t skimp on the processors, either. The Cortex-A9 is ARM’s top of the line, and the A9MP is the extra-special multiprocessor version, and they both come with the Neon DSP accelerator. Clock speeds are expected to be in the 800-MHz range, so they won’t be slow. The chips will be built in an aggressive 28-nm process tweaked for low power instead of high speed, but even so, that’s a fast-moving pair of processors.

Some peripherals will be hard-wired into the chips, such as Ethernet, USB, UARTs, and so forth. You’ll be able to add more peripherals through the FPGA fabric, and all will be connected via ARM’s AXI bus interface. That means you should be able to buy (or develop) semi-standard peripherals with AXI interfaces.

Pricing? Don’t know yet. Size or logic capacity? Wait and see. Time frame? Samples aren’t expected until the back half of 2011, which is more than a year away. So why is Xilinx spilling the beans now? Possibly to piggyback on Actel’s recent SmartFusion rollout or… just maybe… to get a jump on a similar announcement from arch-rival Altera. 

Why Didn’t This Work the First Time?

So what’s different this time? Xilinx has embedded processors in its FPGAs before. So has Altera. And so have smaller FPGA firms like Actel, Atmel, and Cypress. What makes Xilinx think this new product line will fare any better than its predecessor?

We don’t know what Xilinx is thinking, but there are some good reasons why its previous generation failed to live up to expectations and why the new ones just might work.

For starters, the old chips had PowerPC processors inside and the new ones will have ARM. I’m not saying ARM is better than PowerPC, but it sure is a lot more popular. ARM-based processors are even more popular than Intel’s x86 chips. ARM’s legion of licensees ship something like five times as many microprocessors as Intel does. That’s a lot of silicon, and a lot of (presumably) happy programmers writing ARM code. Compare that to PowerPC, which has considerably more limited market appeal, and you begin to see the difference. Just based on dumb probability and statistics, Xilinx’s new ARM-based chips will likely find more customers than the PowerPC products did.

Then there’s the price. We’ll have to take Xilinx’s word on this one, but the company is making noises that the new ARM-based chips will be priced “reasonably.” That certainly wasn’t true of the old PowerPC-based chips. Those suckers were expensive. Not only were you buying a big Virtex-II FPGA (which was an expensive chip to begin with), you were also paying a big premium for the PowerPC processor inside. The result was expensive-squared. Having perhaps learned its lesson, Xilinx may price the new chips within reach of mere mortal designers. If the company could eke out a low-end version for under $10, I think it could be a big hit. 

(Quick lesson on chip pricing, by the way: it has nothing to do with the cost of making silicon. The ingredients in an FPGA or CPU chip are nearly free, but the production line needs to be kept working at full capacity. Bottom line: popularity is the biggest determinant of a chip’s price.)

Third, there’s the CPU-to-FPGA interconnect. Unless you do this properly, there’s no good reason to glue an FPGA and a CPU together in the first place; they might as well be separate chips. With a claimed 2500–3000 interconnects between the ARM processors and the FPGA fabric, it looks like Xilinx has this figured out.

Fourth, there are the peripherals. It’s all well and good to have your CPU and FPGA cohabitating, but you also need I/O. Unless you can put that I/O in the FPGA – and make it play nice with the processor – you’re wasting space. That, in turn, means Xilinx needs to provide lots of canned I/O IP and allow users to create more of their own. The company’s gained ten years of additional experience on this front, so I’m optimistic.

And finally, there are the tools. Xilinx’s first attempt at this was an FPGA with a processor inside. This time around, it’s a processor with an FPGA grafted on. That’s not just semantic hair-splitting: it’s the big difference between these chips and the old ones. The new chips will boot up and run just like normal microprocessors, meaning there’s no FPGA configuration required at all. You can simply ignore all that expensive FPGA fabric surrounding the pair of big Cortex-A9s – and you probably will during early debug sessions.

To me, that’s the key difference. Xilinx’s new chips will look, act, walk, and talk like real microprocessors. You’ll create and debug code for them like any other standalone CPU. Their FPGA-ishness can be ignored until you’re good and ready to start configuring it, and even then it won’t conflict (we’re told) with the microprocessor subsystem. Of course, I’m sure it’s possible to screw up your chip by mis-configuring the FPGA fabric, but at least then it will be your own fault and not some fundamental weakness of the chips themselves.

Even Xilinx can’t fix that problem. 

Leave a Reply

featured blogs
Oct 5, 2022
The newest version of Fine Marine - Cadence's CFD software specifically designed for Marine Engineers and Naval Architects - is out now. Discover re-conceptualized wave generation, drastically expanding the range of waves and the accuracy of the modeling and advanced pos...
Oct 4, 2022
We share 6 key advantages of cloud-based IC hardware design tools, including enhanced scalability, security, and access to AI-enabled EDA tools. The post 6 Reasons to Leverage IC Hardware Development in the Cloud appeared first on From Silicon To Software....
Sep 30, 2022
When I wrote my book 'Bebop to the Boolean Boogie,' it was certainly not my intention to lead 6-year-old boys astray....

featured video

PCIe Gen5 x16 Running on the Achronix VectorPath Accelerator Card

Sponsored by Achronix

In this demo, Achronix engineers show the VectorPath Accelerator Card successfully linking up to a PCIe Gen5 x16 host and write data to and read data from GDDR6 memory. The VectorPath accelerator card featuring the Speedster7t FPGA is one of the first FPGAs that can natively support this interface within its PCIe subsystem. Speedster7t FPGAs offer a revolutionary new architecture that Achronix developed to address the highest performance data acceleration challenges.

Click here for more information about the VectorPath Accelerator Card

featured paper

Algorithm Verification with FPGAs and ASICs

Sponsored by MathWorks

Developing new FPGA and ASIC designs involves implementing new algorithms, which presents challenges for verification for algorithm developers, hardware designers, and verification engineers. This eBook explores different aspects of hardware design verification and how you can use MATLAB and Simulink to reduce development effort and improve the quality of end products.

Click here to read more

featured chalk talk

High Voltage Charging Solution for Energy Storage & Backup Systems

Sponsored by Mouser Electronics and Analog Devices

Today there is growing demand for energy storage with more power, longer range, and longer run time. But the question remains: how can we increase our energy storage given the energy storage mediums on the market today? In this episode of Chalk Talk, Amelia Dalton chats with Anthony Huyhn from Analog Devices about the benefits of high voltage energy storage, why stacked battery cells are crucial to these kinds of systems, how high voltage energy storage systems can reduce conduction loss exponentially and what kind of high voltage charging solutions from Analog Devices are on the market today.

Click here for more information about the Maxim Integrated MAX17703 Li-Ion Battery Charger Controller