Support|documentation

  Xcell Journal Home
  Xcell Journal Article
  Partner Yellow Pages
   
  Xcell Archives
  Order Free Xcell Journal
  Comments & Suggestions
  Write Articles for Xcell

 

Home : Literature : Xcell Journal Online : Article

Get Physical with the PALACE Synthesis Solution

by Sheldon D’Paiva, Applications Engineer, Aplus Design Technologies
sdpaiva@aplus-dt.com (07/07/03)

Aplus Design Technologies’ PALACE physical synthesis tool can drive down your costs by helping you quickly meet or exceed your design requirements with a slower speed grade or a smaller device.

Xilinx Spartan™-3 FPGAs give designers advanced features at previously unattainable costs. Moreover, Spartan-3 densities reaching five million system gates provide cost-competitive solutions in markets once only addressable by ASICs. But as FPGAs penetrate the ASIC space, FPGA designers must deal with the same complexities faced by ASIC designers.

In particular, ASIC designers know that to meet design requirements and reduce iterations within the design flow, synthesis must be coupled with physical design considerations.

Synthesis design flows that do not take physical design into account can erode your time to market and cost advantages. With the large densities and complexities of modern low-cost FPGA architectures such as Spartan-3 FPGAs, you cannot afford to ignore interconnect delay and architecture-specific considerations during synthesis.

Poorly synthesized designs cause greatly increased runtimes for the place-and-route tools, as they struggle to meet timing constraints. Bad designs also create an additional burden on the designer by requiring expert manual intervention and time-consuming iterations between synthesis and implementation tools.

Furthermore, additional costs are incurred if the design requirements are not met in the targeted device. For high-volume and low-density devices, moving to a faster speed grade typically translates to a 13% increase in cost; moving to a larger part translates to a 16% increase in cost. This increase in cost is even greater for lower volume designs or when using higher density devices.

Physical synthesis couples synthesis with physical design. It has become a key enabling technology that can help you maximize the potential of FPGAs, especially low-cost FPGAs such as Spartan-3 devices.

Aplus Design Technologies, a leader in physical synthesis technology, has recently added Spartan-3 support to its fully automated physical synthesis product called PALACE™ (Physical And Logic Automatic Compilation Engine). The PALACE physical synthesis tool combines logic optimization, architecture-specific mapping, and placement-driven synthesis with detailed device modeling.

Using the PALACE tool, you can meet your design requirements without manual intervention, floorplanning, or numerous lengthy iterations between synthesis and place-and-route.

In fact, by fully exploiting the capabilities of the FPGA architecture, you can often meet your design requirements in a slower speed grade or a smaller part and significantly reduce your costs.

PALACE Physical Synthesis
PALACE physical synthesis employs a suite of architecture-specific optimization techniques in both the logic and physical domains. These techniques include logic restructuring, flip-flop repositioning, constraint-driven mapping with delay-area tradeoffs, logic duplication, placement, and placement-driven optimization.

PALACE technology highlights include:

  • Unified timing models
    • Detailed device + interconnect modeling
    • Consistent model throughout physical synthesis
  • Physical planning
    • Global interconnect planning
    • Timing-driven routability-aware placement
  • Optimization in both logic and physical domains
    • Timing and area optimization
    • Multi-clock constraint-driven retiming
    • Logic restructuring and replication
  • Technology mapping
    • Architecture-specific mapping
    • Constraint-driven with delay-area trade-off.
The benefits of the PALACE solution include:
  • A fully automated solution with no expert user intervention required
  • Faster timing closure by reducing itera-tions within the design flow
  • Performance improvement by at least one speed grade
  • Reduction in area utilization
  • Reduction in place-and-route runtime.
PALACE Design Flow
There are two design flows that can be used with PALACE technology:
  1. Standard flow: This is the initial flow that should be used for your design.
  2. Guided flow: If necessary, this flow should be used to achieve incremental improvements for a fully placed design (for Virtex™-II FPGAs).

Standard Flow
When you use the PALACE tool in the standard flow, you can use any synthesis tool that generates an EDIF netlist. This dramatically reduces your learning curve and allows you to choose the design environment that you prefer. Your design flow is essentially preserved, with only a simple extra step required after synthesis.

Once you have synthesized your design, the resulting netlists and constraints are passed as inputs to the PALACE program. The PALACE tool processes the netlists together with any design constraints. Upon successful completion, the PALACE engine will generate an optimized netlist and a constraint file. You then use the optimized netlist and constraint file as you normally would in the rest of your design flow. Figure 1 shows how the PALACE solution fits seamlessly into your design flow. You can control PALACE operations in the standard flow by a simple four-level effort option.

The effort level determines how aggressively the PALACE tool will try to optimize your design, with the first level optimizing for minimum area utilization and the remaining levels optimizing for maximum performance. The default level is the third level, and it is the initial recommended level when performance is an issue.

After specifying the effort level, no further user intervention is required. Using PALACE technology in this flow provides you with the advantages of physical synthesis in a simple push-button automated flow, and can meet most realistic design requirements.

Guided Flow
You can use the PALACE tool in the guided flow for Virtex-II devices to achieve the incremental improvements needed to meet your design requirements. In this flow, you first generate an NCD (native circuit description) file by placing and routing your design. This NCD file is then converted to XDL (Xilinx Design Language) format with the Xilinx XDL utility and passed as an input to the PALACE program, along with the design constraint file. The PALACE tool optimizes the paths that do not meet timing requirements to help you achieve timing closure. As with the standard flow, an optimized netlist and constraint file is produced that you use in the rest of your design flow.

You can control PALACE operation in the guided flow by a simple two-level effort option, which determines how aggressively the PALACE program will try to optimize your design. As with the standard flow, no further user intervention is required. Using PALACE physical synthesis in the guided flow provides you with the capabilities of an advanced physical synthesis solution in a simple push-button automated flow. Thus, you can meet the "last mile" performance requirements of your design.

Achieving Best Results with PALACE
Effective use of the PALACE physical synthesis solution can help you meet your design requirements quickly. With the standard and guided flows, you have two simple but powerful solutions that should be used together in order to achieve the best results.

When you use the PALACE engine in either flow, you should always include timing constraints in the input constraint file. Meaningful and accurate timing constraints are important because they help the PALACE program to focus on the problem areas of your design, while allowing trade-offs with other non-critical areas.

If you are particularly concerned about area utilization, you should use the first effort level on your initial run. Otherwise, you should use the default settings, which will automatically run PALACE physical synthesis in standard flow at a high-optimization effort level.

After you have obtained the optimized results, you can analyze either the PALACE report file or the report from an implementation run to determine if the result meets your requirements. If you miss your timing targets by a wide margin (more than a few nanoseconds in Spartan-3 devices), you should try running the PALACE engine in the standard flow with a higher effort level. If you are using a Virtex-II device and have still not met timing requirements, you should try the guided flow to achieve the last nanosecond or so of required performance.

The performance gains that you obtain with PALACE physical synthesis will vary depending on the type and complexity of the design. Table 1 shows performance improvements obtained when the PALACE solution was used in the standard flow for a few sample designs from a variety of categories. In all of these cases, the design flow was identical for two runs, except that the PALACE solution was used before the implementation stage in the second run. As you can see, PALACE physical synthesis provides a substantial increase in performance that allows you to move to a slower speed grade in many cases.

Table 1 – Examples of PALACE performance improvements
Category (Design)Spartan-3 Device Performance Gain
(% Max Frequency)
DSP (DES)XC3S400FT256-4 37%
Microcontrollers (uP1232a) XC3S200FT256-4 28%
Communications (Reed-Solomon decoder) XC3S200PQ408-4 8%
Bus Interfaces (I 2 C Master) XC3S50PQ208-4 12%
State Machine and Control Logic (Arbiter) XC3S400FT256-4 93%

Conclusion
As FPGAs continue to increase in density and complexity, you need to ensure that your tools extract the maximum potential of the device’s architecture in the minimum amount of time. This is especially true for cost-sensitive design cycles that involve the low-cost Spartan-3 FPGAs. Without a physical synthesis solution that can effectively exploit the architecture of your target device, you risk overrunning your forecasted costs by having to move to a more expensive part, or by spending too many engineering hours trying to achieve timing closure.

The Aplus PALACE tool is an advanced physical synthesis solution that fits seamlessly within your existing design flow for all Xilinx Spartan-II, Spartan-IIE, Spartan-3, Virtex, Virtex-E, Virtex-II, and Virtex-II Pro™ FPGAs, providing you with a fully automated solution to help achieve your design requirements in the minimum amount of time. In fact, you may even be able to move to a smaller part or a slower speed grade and dramatically reduce your costs.

To learn more about the PALACE physical synthesis tool, e-mail info@aplus-dt.com or visit www.aplus-dt.com.

Printable PDF version of this article. PDF logo (07/07/03) 115 KB

 
/csi/footer.htm