Featured Articles
FPGA Design Meets the Heisenberg Uncertainty Principle
The classic dilemma of meeting design specifications - on schedule - with increasingly complex devices is now a harsh reality for FPGA designers. Clearly, it has become more challenging to converge on these requirements in terms of both performance and area utilization in high-end FPGA designs. To complicate matters, last-minute design functionality changes after assumed project "completion" have also become more common. One well known company literally wasted months trying to incorporate a single late-coming engineering change order (ECO), because the design team encountered difficulties maintaining the previous timing results after making this specification change. It's like the Heisenberg Uncertainty Principle wreaking havoc in the programmable logic realm!
To eliminate the uncertainties now governing FPGA-based projects, companies must adopt a complete design methodology that provides the right combination of automated and interactive optimizations via logical and physical synthesis techniques, along with the right mix of analysis, debug and ECO capabilities. This powerful combination of user control and flexibility is the only proven route to predictable, accurate and ultimately successful design of leading-edge FPGAs today.
Read the entire Mentor Graphics Corp. article on SOCcentral.
Logic and Physical Synthesis: Should There Be a Difference?
Of course, there is a difference between logic synthesis and physical synthesis. Typically, the former maps an RTL description to a set of gates to realize the same functionality. Conversely, the latter implements the netlist on a given (minimal) floorplan and maintains or improves the quality of physical characteristics of the design. These characteristics could include timing, power, testability, signal integrity, routability and manufacturability, all leading to improved yield for the device.
Looking through the reality viewfinder, however, shows a much different perspective for many design project teams. For example, logic synthesis is a disparate step, performed in almost complete isolation. The logic design engineer writes (or receives) functionally verified RTL code and begins to synthesize it with incomplete timing constraints. Whether the concept of wireload is used for selecting the most optimal cells, traditional methods ignore a design’s physical requirements. This leads to a false sense of "timing closure" too early in the design process and a false sense of confidence that the logical netlist can be implemented by the physical design team.
Read the entire Magma Design Automation, Inc. article on SOCcentral.
The Evolution of FPGA Physical Synthesis
The emergence of fast and complex FPGA devices has, like in the ASIC world, created the need for considering physical characteristics of a design during synthesis in order to avoid costly, time-consuming design iterations. A few EDA vendors are attempting to tackle this issue by applying FPGA physical synthesis approaches derived from the historical evolution of ASIC logic synthesis. However, when engineers need to employ physical optimizations on FPGAs they cannot use the same tools that are used to perform the function in ASIC design, because the silicon fabric is totally different. In the ASIC methodology engineers control the placement of a logic cell and, by following the foundry design rules, generate the connectivity path between the pins of the cells. An FPGA has a rigid fabric: the connectivity grid is fixed once the cell is placed. Therefore a physical synthesis tool must have intimate knowledge of the device fabric including the complex routing structures in order to most efficiently create placement and perform netlist optimizations based upon physical design information.
Read the entire Synplicity, Inc. article on SOCcentral.
Graph-Based Physical Synthesis for FPGAs
Traditional synthesis technology is failing to address the needs of today’s extremely large and complex FPGA designs implemented in devices at the 90nm technology node and below. Conventional FPGA synthesis engines are based on ASIC-derived techniques such as floorplanning, in-place optimization (IPO), and – more recently – physically aware synthesis. However, these ASIC-derived synthesis algorithms are not appropriate for use with the regular architectures and pre-defined routing resources presented by FPGAs. The end result is that all traditional FPGA synthesis approaches require multiple time-consuming iterations between front-end synthesis and downstream place-and-route tools so as to achieve convergence and timing closure.
Read the entire Synplicity, Inc. article on SOCcentral.
|
Tutorials, White Papers and Conference Papers on Logic & Physical Synthesis
| 644-MHz SDR LVDS Transmitter/Receiver Xilinx, Inc. |
| A Lattice-Based Framework for the Classification and Design of Asynchronous Pipelines Design Automation Conference (DAC) |
| A Methodology for Performance Analysis of Network-on-Chip Architectures for Video SoC OCP International Partnership (OCP-IP) |
| A New Heuristic Algorithm for Reversible Logic Synthesis Design Automation Conference (DAC) |
| A Non-Parametric Approach for Dynamic Range Estimation of Nonlinear Systems Design Automation Conference (DAC) |
| A PLA Based Asynchronous Micropipelining Approach for Subthreshold Circuit Design Design Automation Conference (DAC) |
| A Provably Good Approximation Algorithm for Power Optimization Using Multiple Supply Voltages (47.5) Design Automation Conference (DAC) |
| A Robust Algorithm for Approximate Compatible Observability Don't Care (CODC) Computation Design Automation Conference (DAC) |
| A Synthesis Flow Toward Fast Parasitic Closure for Radio-Frequency Integrated Circuits Design Automation Conference (DAC) |
| A Timing-Driven Chip-Level Design Flow Design Automation Conference (DAC) |
| A Unified Approach to Canonical Form-based Boolean Matching (46.1) Design Automation Conference (DAC) |
| A Unified Optimization Framework for Equalization Filter Synthesis Design Automation Conference (DAC) |
| A Watermarking System for IP Protection by a Post-Layout Incremental Router Design Automation Conference (DAC) |
| Achieving Design Closure with Constraint-Driven Synthesis Mentor Graphics Corp. |
| An Efficient and Versatile Scheduling Algorithm Based on SDC Formulation Design Automation Conference (DAC) |
| An Efficient Mechanism for Performance Optimization of Variable-Latency Designs (52.2) Design Automation Conference (DAC) |
| An High-End Realtime Stream Processing Library for FPGAs (49.2) Design Automation Conference (DAC) |
| An Introduction to HDLs for Simulation and Synthesis Accolade Design Automation |
| Architecture-Level Synthesis for Automatic Interconnect Pipelining Design Automation Conference (DAC) |
| Area Constraint Evaluation for FPGAs Synplicity, Inc. |
| Automatic Correct Scheduling of Control Flow Intensive Behavioral Descriptions in Formal Synthesis Design Automation Conference (DAC) |
| Automatic Generation of Customized Discrete Fourier Transform Design Automation Conference (DAC) |
| Automating Sequential Clock Gating Calypto Design Systems, Inc. |
| BDD Representation for Incompletely Specified Multiple-Output Logic Functions and Its Applications to Functional Decomposition Design Automation Conference (DAC) |
| Behavior and Communication Co-Optimization for Systems with Sequential Communication Media Design Automation Conference (DAC) |
| Budgeting-Free Hierarchical Design Method for Large Scale and High-Performance LSIs Design Automation Conference (DAC) |
| Buffer Insertion in Large Circuits with Constructive Solution Search Techniques Design Automation Conference (DAC) |
| Catching Up with Moore’s Law: How to Fully Exploit the Benefits of Nanometer Silicon Tensilica, Inc. |
| Challenges of Ultra Low Power Wireless System Design Design Automation Conference (DAC) |
| Clock Buffer and Wire Sizing Using Sequential Programming Design Automation Conference (DAC) |
| Clock Concurrent Optimization Azuro, Inc. |
| Closing the Power Gap between ASIC and Custom: An ASIC Perspective Design Automation Conference (DAC) |
| Coding And Scripting Techniques For FSM Designs With Synthesis-Optimized, Glitch-Free Outputs Sunburst Design, Inc. |
| Coding Guidelines for Datapath Synthesis Synopsys, Inc. |
| Correct-by-Construction Layout-Centric Retargeting of Large Analog Designs Design Automation Conference (DAC) |
| DAG-Aware AIG Rewriting: A Fresh Look at Combinational Logic Synthesis Design Automation Conference (DAC) |
| DDBDD: Delay-Driven BDD Synthesis for FPGAs (49.1) Design Automation Conference (DAC) |
| Decomposing Specifications with Concurrent Outputs to Resolve State Coding Conflicts in Asynchronous Logic Synthesis Design Automation Conference (DAC) |
| Design Automation for Mask Programmable Fabrics Design Automation Conference (DAC) |
| Design of Rotary Clock Based Circuits (4.1) Design Automation Conference (DAC) |
| Design Space Exploration Using Time and Resource Duality with the Ant Colony Optimization Design Automation Conference (DAC) |
| Design Tips for Arithmetic Functions Xilinx, Inc. |
| Designing Logic Circuits for Probabilistic Computation in the Presence of Noise Design Automation Conference (DAC) |
| Designing System on a Chip Products Using Systems Engineering Tools VaST Systems Technology Corp. |
| Digital Integrated Circuit Design The University of Bolton |
| Dynamic Supply Gating for Switching and Active Leakage Power Reduction Design Automation Conference (DAC) |
| Early Cutpoint Insertion for High-Level Software vs. RTL Formal Combinational Equivalence Verification Design Automation Conference (DAC) |
| Efficient and Accurate Gate Sizing with Piecewise Convex Delay Models Design Automation Conference (DAC) |
| Efficient SAT-based Boolean Matching for FPGA Technology Mapping Design Automation Conference (DAC) |
| Enabling Assertion-Based Verification Zocalo Tech, Inc. |
| Energy-Aware Deterministic Fault Tolerance in Distributed Real-Time Systems Design Automation Conference (DAC) |
| Evaluating DSP Processor Performance Berkeley Design Technology, Inc. (BDTI) |
| Exploiting K-Distance Signature for Boolean Matching and G-Symmetry Detection Design Automation Conference (DAC) |
| Extensive Slack Balance: An Approach to Make Front-end Tools Aware of Clock Skew Scheduling Design Automation Conference (DAC) |
| Fast and Accurate Parasitic Capacitance Models for Layout-Aware Synthesis of Analog Circuits
Design Automation Conference (DAC) |
| First-Order Incremental Block-Based Statistical Timing Analysis Design Automation Conference (DAC) |
| FITS: Framework-Based Instruction-Set Tuning Synthesis for Embedded Application Specific Processors Design Automation Conference (DAC) |
| Floorplan-aware Automated Synthesis of Bus-based Communication Architectures Design Automation Conference (DAC) |
| FPGA Design Tutorial 1-CORE Technologies |
| FPGA Silicon Virtual Prototyping Hier Design, Inc. |
| FPGA Synthesis: The Vendor-Independent Approach Mentor Graphics Corp. |
| FPGA Technology Mapping: A Study of Optimality Design Automation Conference (DAC) |
| FPGA-Based Design and Implementation of the 3GPP-LTE Physical Layer Using Parameterized Synchronous Dataflow Techniques University of Maryland (ECE) |
| FPGAs: Under the Hood National Instruments Corp. |
| Freeze: Engineering a Fast Repeater Insertion Solver for Power Minimization Using the Ellipsoid Method Design Automation Conference (DAC) |
| Front-End Physical Design Exploration Icinergy Software Company |
| Gain-Based Technology Mapping for Minimum Runtime Leakage under Input Vector Uncertainty Design Automation Conference (DAC) |
| Generation of Yield-Aware Pareto Surfaces for Hierarchical Circuit Design Space Exploration Design Automation Conference (DAC) |
| Global Critical Path: A Tool for System-Level Timing Analysis (43.4) Design Automation Conference (DAC) |
| Hardware Speech Recognition for User Interfaces in Low Cost, Low Power Devices Design Automation Conference (DAC) |
| Hierarchical Bottom-up Analog Optimization Methodology Validated by a Delta-Sigma A/D Converter Design for the 802.11a/b/g Standard Design Automation Conference (DAC) |
| High-Level "Plug-and-Play" Specification, Modeling and Synthesis of Pipelined Architectures with Bluespec’s PAClib Bluespec, Inc. |
| How Accurately Can We Model Timing in A Placement Engine? Design Automation Conference (DAC) |
| Implicit Enumeration of Structural Changes in Circuit Optimization Design Automation Conference (DAC) |
| Incremental Exploration of the Combined Physical and Behavioral Design Space Design Automation Conference (DAC) |
| Incremental Retiming for FPGA Physical Synthesis Design Automation Conference (DAC) |
| Integrated Droplet Routing in the Synthesis of Microfluidic Biochips (51.1) Design Automation Conference (DAC) |
| Interconnect and Communication Synthesis for Distributed Register-File Microarchitecture (43.1) Design Automation Conference (DAC) |
| Leakage Power Optimization with Dual-Vth Library in High-Level Synthesis Design Automation Conference (DAC) |
| Licensable Processors: More Than Just Design IP StarCore |
| Meeting the Synthesis Challenge of Complex Programmable Devices at 100K Gates and Beyond Synplicity, Inc. |
| MiniBit: Bit-Width Optimization via Affine Arithmetic Design Automation Conference (DAC) |
| Minimizing Buffer Requirements of Synchronous Dataflow Graphs with Model-Checking Design Automation Conference (DAC) |
| Minimizing Peak Current via Opposite-Phase Clock Tree Design Automation Conference (DAC) |
| Mixed-Signal IC Design University of Colorado at Boulder |
| Modeling Litho-Constrained Design Layout (19.4) Design Automation Conference (DAC) |
| Modular Scheduling of Guarded Atomic Actions Design Automation Conference (DAC) |
| Multi-Level Approach for Integrated Spiral Inductor Optimization Design Automation Conference (DAC) |
| Multiple Constant Multiplication by Time-Multiplexed Mapping of Addition Chains Design Automation Conference (DAC) |
| Multiplexer Restructuring for FPGA Implementation Cost Reduction Design Automation Conference (DAC) |
| NanoMap: An Integrated Design Optimization Flow for a Hybrid Nanotube/ CMOS Dynamically Reconfigurable Architecture (17.1) Design Automation Conference (DAC) |
| Nanometer Analysis Improves Timing Accuracy in Synthesis-Driven Flows Nassda Corp. |
| Optimal Simultaneous Mapping and Clustering for FPGA Delay Optimization Design Automation Conference (DAC) |
| Optimal Study of Resource Binding with Multi-Vdds Design Automation Conference (DAC) |
| Optimization of Area under a Delay Constraint in Digital Filter Synthesis Using SAT-Based Integer Linear Programming Design Automation Conference (DAC) |
| ORACLE: Optimization with Recourse of Analog Circuits Including Layout Extraction Design Automation Conference (DAC) |
| PANEL: Design Challenges for Next-Generation Multimedia, Game and Entertainment Platforms Design Automation Conference (DAC) |
| PANEL: ESL: Tales from the Trenches Design Automation Conference (DAC) |
| Path Based Buffer Insertion Design Automation Conference (DAC) |
| Performance Space Modeling for Hierarchical Synthesis of Analog Integrated Circuits Design Automation Conference (DAC) |
| Placement of Digital Microfluidic Biochips Using the T-tree Formulation Design Automation Conference (DAC) |
| Post-Layout Logic Optimization of Domino Circuits Design Automation Conference (DAC) |
| Power Aware Placement Design Automation Conference (DAC) |
| Power-Saving Clock-Gating Technique is an Inseparable Part of SoC Design Toshiba America Electronic Components, Inc. (TAEC) |
| Progressive Decomposition: A Heuristic to Structure Arithmetic Circuits (23.1) Design Automation Conference (DAC) |
| Quality of Silicon: A Wired Way to Success Cadence Design Systems, Inc. |
| Quantum Logic Synthesis by Symbolic Reachability Analysis Design Automation Conference (DAC) |
| Race-Condition-Aware Clock Skew Scheduling Design Automation Conference (DAC) |
| Rapid Estimation of Control Delay from High-Level Specifications Design Automation Conference (DAC) |
| Reducing AMBA-based SoC Design Time by More Than 50% Using coreAssembler Synopsys, Inc. |
| Reducing FPGA Costs by Saving a Speed Grade Mentor Graphics Corp. |
| Register Binding for Clock Period Minimization Design Automation Conference (DAC) |
| Re-Synthesis for Delay Variation Tolerance Design Automation Conference (DAC) |
| Re-timing for Performance Improvement in FPGA Designs Mentor Graphics Corp. |
| RTL Coding Styles That Yield Simulation and Synthesis Mismatches Sunburst Design, Inc. |
| SAT Sweeping with Local Observability Don't-Cares Design Automation Conference (DAC) |
| Si2 Power Aware Design Flows Silicon Integration Initiative, Inc. (Si2) |
| Sign Bit Reduction Encoding For Low Power Applications Design Automation Conference (DAC) |
| Signal Integrity Closure Cadence Design Systems, Inc. |
| SOC-LNA: Synthesis and Optimization for Fully Integrated Narrow-Band CMOS Low Noise Amplifiers Design Automation Conference (DAC) |
| Spec-Driven Design Cadence Design Systems, Inc. |
| State Encoding of Large Asynchronous Controllers Design Automation Conference (DAC) |
| State Machine Coding Styles for Synthesis Sunburst Design, Inc. |
| Statistical On-Chip Communication Bus Synthesis and Voltage Scaling Under Timing Yield Constraint Design Automation Conference (DAC) |
| Symmetry Detection for Large Boolean Functions Using Circuit Representation, Simulation and Satisfiability Design Automation Conference (DAC) |
| Synchronous Elastic Circuits with Early Evaluation and Token Counterflow (23.3) Design Automation Conference (DAC) |
| Synthesis of High-Performance Packet Processing Pipelines Design Automation Conference (DAC) |
| Synthesis of Synchronous Elastic Architectures Design Automation Conference (DAC) |
| Synthesizing Interconnect-Efficient Low Density Parity Check Codes Design Automation Conference (DAC) |
| Synthesizing Stochasticity in Biochemical Systems (36.4) Design Automation Conference (DAC) |
| System-Level Design Flow Based on a Functional Reference for HW and SW (3.1) Design Automation Conference (DAC) |
| Techniques for Effective Distributed Physical Synthesis (46.4) Design Automation Conference (DAC) |
| Temperature-Aware Resource Allocation and Binding in High-Level Synthesis Design Automation Conference (DAC) |
| Test Response Compactor with Programmable Selector Design Automation Conference (DAC) |
| The Dangers of Living with an X (Bugs Hidden in Your Verilog) ARM |
| The Evil Twins of Verilog Synthesis Sunburst Design, Inc. |
| The Importance of Adopting a Package-Aware Chip Design Flow Design Automation Conference (DAC) |
| Timing Closure for Low-FO4 Microprocessor Design Design Automation Conference (DAC) |
| Timing-Driven Steiner Trees are (Practically) Free Design Automation Conference (DAC) |
| Topology Aware Mapping of Logic Functions onto Nanowire-based Crossbar Architectures Design Automation Conference (DAC) |
| Towards Automatic Exploration of Arithmetic Circuit Architectures Design Automation Conference (DAC) |
| Towards Scalable Flow and Context Sensitive Pointer Analysis Design Automation Conference (DAC) |
| Unified High-Level Synthesis and Module Placement for Defect-Tolerant Microfluidic Biochips Design Automation Conference (DAC) |
| Variability Driven Gate Sizing for Binning Yield Optimization Design Automation Conference (DAC) |
| Verilog-2001 Behavioral and Synthesis Enhancements Sunburst Design, Inc. |
| VHDL Tutorial Yankee Bush Software |
| VHDL Tutorial University of Erlangen-Nürnberg |
| VirtualWires: A Technology for Massive Multi-FPGA Systems Mentor Graphics Corp. |
| Visualizing the Behavior of Logic Synthesis Algorithms Magma Design Automation, Inc. |
|