

Use the dedicated pipeline registers inside the blocks to reduce the setup and clock-to-out timing. First, check to see if the design is making the most of the block's features and that the synthesis tool is inferring the features you expected from your RTL code. If a hard-IP block continuously shows up as the source or destination of your critical path, there are a couple of things that can be analyzed to improve the performance. Many FPGA architectures also contain hard IP blocks, such as embedded memory and blocks used for DSP functions. For maximum utilization of each slice, it is important to take into consideration the width of the LUTs, the connectivity between the basic elements, and any shared resources. For example, each of the configurable logic blocks (CLBs) in a Xilinx Virtex-5 FPGA contains two slices and each slice contains four 6-input look-up tables (LUTs), four registers, and dedicated carry logic.

The first thing to learn about any FPGA is what makes up the basic fabric of logic. Datasheets, user guides, and technical papers on the architectural features should be thoroughly reviewed before moving forward with a design. When evaluating a new FPGA architecture, it is important to understand the hardware features and the tradeoffs that can be made in the architecture.
#SYNPLIFY PRO PREVENT CLOCK INFERENCE HOW TO#
This article describes how to achieve faster timing in the fewest design iterations. To maximize system performance, designers need to use proper design techniques such as defining timing constraints and selecting options in synthesis and implementation that work best for their design. Today's FPGAs resemble a true System-on-a-Chip (SoC) with many more sophisticated features than the glue logic FPGAs of the past. Editor's Note: See also the related Product Release Article.Īs FPGAs push the envelope of performance, understanding how to design for maximum performance requires knowledge of the device architecture and design software.
