feature article
Subscribe Now

Mind the Gap

Taray Bridges Boards and FPGAs

Printed circuit board (PCB) design software is one of the oldest segments of electronic design automation (EDA).  Long before people were doing synthesis, formal verification, HDL simulation, or most of the other modern design automation processes, tools were around that helped us automate the design and layout of our PCBs.  Today’s PCB tools carry the legacy of that long history – both conceptually and, in some cases, literally.  Some of today’s PCB tools still carry pre-historic code that was developed long before… well, before FPGAs came along, for example.

Why should we care about this?

For most of the history of PCB tools, the pin was a well-behaved object.   For every component in your library, each pin had a well-defined, static behavior. This one was Vcc, this one was Gnd, these 32 were address lines, this one was hanging around as bait for tin whiskers…  This aspect of life was pretty simple for PCB tools.  

Then, along came FPGAs.  

When you put an FPGA into your PCB library, the pins are not so well-behaved. Those annoying FPGA designers can go swapping them around willy-nilly on the fly, creating a nightmare in board design. “Wait!” (I hear you out there) “Pin swapping on FPGAs is a board-design super-power.  You can solve all kinds of board layout challenges by simply moving the pin assignments around on the FPGA.”  The problem with super-powers is that they can be used for both good and evil.  Your FPGA designer could use that power to become either super-hero or super-villain.  

For example, what if you finally have all the routing and timing and thermal and signal integrity issues worked out on your board design, and then the FPGA dude swings past your office and says “Oh, by the way, I had to completely re-do the pin assignment on the FPGA because of some on-chip timing violations I was getting…”  This case would fall on the super-villain side.  You now have to completely re-work the board, with myriad opportunities for major mistakes.

On the other side of the coin, you might be struggling with a terrible problem routing a bus around the device.  You mention it over the cube wall in casual conversation and the FPGA guy says “Hey, I can move all those connections to the other side of the FPGA if that will help!”  Case 2 goes to the super-hero.

Whether hero or villain, however, these changes come at a cost.  Every change in the pin assignment brings ample opportunities for problems to creep in on your PCB.  FPGAs are also not simple devices from a pinout perspective.  Many FPGAs have complex power supply requirements with multiple voltages – each connected to multiple supply rails, and with de-coupling and isolation requirements resulting from high-speed serial connections, LVDS, and a host of other specialized uses that all converge inside the FPGA.  Clock connections have specific requirements on most FPGAs as well, and mis-connecting a clock can be a subtle trouble to track. Finally, as high-speed serial connections continue to take over the load from wide parallel busses, the board-level design requirements change dramatically.  

All of these difficulties fall in a historic gap in the tool chain.  Most of the tools from FPGA companies tend to drop off at the pins.  The FPGA vendors are happy to take care of you in grand style as long as you’re inside their silicon, but when you make that jump across the bonding wire, through a package pin, down a solder dot, and onto some copper trace in a sea of FR4, you’ve crossed a gap – both in the physical realm of the device and in the tool chain.  The board design tools pick you up on the other side of that little chasm, taking your traces where they need to be, but crossing that boundary brings many a woe to the unwary.  

Taray has recently announced a tool called “7Circuits” that aims to bridge this gap, taking a top-level view of the board/FPGA interaction.  7Circuits performs what the company calls I/O Synthesis.  Using 7Circuits, you define the basic interfaces between components in your system, and the tool then allows a kind of board-level floorplanning – where your constraints, the FPGA vendor’s design rules, the interface particulars, and the topology of your overall circuit help to drive the location and pin assignment and component location for your system.

The tool bridges the gap between tool sets – connecting the FPGA vendor tools with the PCB design tools much more intelligently than the way they come out of the box.  7Circuits passes symbol, schematic, power and reference voltage information and other important data to the PCB tool.  It also passes pin assignment and other important board-related data to the FPGA tool, and it has feedback loops from both tools to break the finger-pointing design iterations that can occur when FPGA-on-board design is done manually between team members.  Automating the (usually manual, tedious, and error-prone) process of generating and checking the power and reference-voltage connections to the FPGA can avoid board re-spins and eliminate frustrating and subtle bugs that can result from “almost following” the vendor’s recommendations.

Starting from the initial floorplan, you can begin the parallel tasks of FPGA and board design with a big head-start.  The FPGA pin assignments are initially chosen to simplify board routing and signal integrity.  When designs contain multiple FPGAs, the advantages of pre-planning are multiplied, as solving the many-to-many flexible pin assignment can be a daunting manual optimization.  

The big value kicks in when you start making changes, however.  If your FPGA design runs into on-chip timing problems, and you end up needing to move pin assignments to solve some of them, the automatic bi-directional link between the FPGA and PCB domains kicks in and makes sure that your board designers are working on the same design as your FPGA designers.  

Overall, automating the usually napkin-bound process of pin assignment, connecting the disparate worlds of FPGA design and PCB design, and maintaining rule-checks on the resulting design against the complex and confusing set of design rules supplied by vendors is a very high-value contribution for teams designing FPGA-based boards, particularly those with multiple FPGAs on a board.  Several tool vendors including Altium and Mentor Graphics offer solutions that compete with some or all of these capabilities, but Taray is the first company we’ve seen that takes on the problem independently with a stand-alone offering integrated with both FPGA tools and PCB tools.  

Taray’s 7Circuits is integrated with PCB layout tools from EDA vendors including Cadence and Mentor Graphics and with FPGA tools from vendors including Xilinx and Altera.

Leave a Reply

featured blogs
Feb 25, 2021
At Cadence, we pride ourselves on creating and sustaining a company culture, that drives innovation and business success. To continue our series of EMEA team members'€™ interviews, we spoke with Aspa... [[ Click on the title to access the full blog on the Cadence Community...
Feb 25, 2021
Learn how ASIL-certified EDA tools help automotive designers create safe, secure, and reliable Advanced Driver Assistance Systems (ADAS) for smart vehicles. The post Upping the Safety Game Plan for Automotive SoCs appeared first on From Silicon To Software....
Feb 24, 2021
mmWave applications are all the rage. Why? Simply put, the 5G tidal wave is coming. Also, ADAS systems use 24 GHz for SRR applications and 77 GHz for LRR applications. Obviously, the world needs mmWave tech! Traditional mmWave technology spans the 30 – 300 GHz frequency...
Feb 24, 2021
Crowbits are programmable, LEGO-compatible, magnetically-coupled electronic blocks to interest kids in electronics and computing and facilitate their STEM activities....

featured video

Designing your own Processor with ASIP Designer

Sponsored by Synopsys

Designing your own processor is time-consuming and resource intensive, and it used to be limited to a few experts. But Synopsys’ ASIP Designer tool allows you to design your own specialized processor within your deadline and budget. Watch this video to learn more.

Click here for more information

featured paper

How to Fast-Charge Your Supercapacitor

Sponsored by Maxim Integrated

Supercapacitors (or ultracapacitors) are suited for short charge and discharge cycles. They require high currents for fast charge as well as a high voltage with a high number in series as shown in two usage cases: an automatic pallet shuttle and a fail-safe backup system. In these and many other cases, the fast charge is provided by a flexible, high-efficiency, high-voltage, and high-current charger based on a synchronous, step-down, supercapacitor charger controller.

Click here to download the whitepaper

featured chalk talk

Cutting the AI Power Cord: Technology to Enable True Edge Inference

Sponsored by Mouser Electronics and Maxim Integrated

Artificial intelligence and machine learning are exciting buzzwords in the world of electronic engineering today. But in order for artificial intelligence or machine learning to get into mainstream edge devices, we need to enable true edge inference. In this episode of Chalk Talk, Amelia Dalton chats with Kris Ardis from Maxim Integrated about the MAX78000 family of microcontrollers and how this new microcontroller family can help solve our AI inference challenges with low power, low latency, and a built-in neural network accelerator. 

Click here for more information about Maxim Integrated MAX78000 Ultra-Low-Power Arm Cortex-M4 Processor