United Business Media EE Times


Search

HOMEMARKET INTELLIGENCE UNITFORUMSDESIGNNEW PRODUCTSCAREERSBLOGSCONTACTEVENTSSIGN UP!RSSMost Popular contentTrusted Sources

 

Exploring new design flows -- RTL synthesis
Print this article Email this article Reprints RSS Digital Edition

EEdesign.com


Editor's Note: In Part 2 of this series, consultant and ASIC designer Tom Moxon covered several trends in virtual silicon prototying design flows. In this installment of the series he'll show how to link these flows with several different RTL synthesis design flows.

Part 3: RTL Synthesis

In the previous section we concentrated on improving the quality of the RTL code using virtual silicon prototying tools. After RTL floorplanning, these tools can help drive RTL synthesis by providing partitioning data, placement data, custom wireload models and control/run scripts. There have been a lot of improvements in RTL synthesis tools over the past few years, with a number of new tools available to designers, as well as some existing tools that have now matured enough to become useful.

For Verilog source and RTL synthesis scripts, I've been using several of the following designs available on the web:


Open Risc Processor Source Design Files
VGA Controller Source Design Files
picoJava-II Source Design Files

These are representative packed IP blocks, and they come with example synthesis scripts, constraints, and design files. In the OpenCore conventions, the "design_name/syn" directory would be used for RTL synthesis with Design Compiler. However, in order to avoid temporary file and naming collisions, I tend to use separate subdirectories for different vendor/tool views, with the "design_name/syn" directory as the RTL synthesis reference directory, containing the master constraint files. When simultaineously using multiple tools, this facilitates separation of the different vendor/tool views. I often use the company symbol in the subdirectory naming scheme, so I'll typically have :

/project_path/design_name/syn RTL Synthesis Reference Directory
/project_path/design_name/snps Synopsys/DC
/project_path/design_name/ids Incentia/DesignCraft
/project_path/design_name/synp Synplicity/SynplifyASIC
/project_path/design_name/cdn Cadence/PKS

The basic strategy used on these RTL synthesis examples for exploratory, first time synthesis is a classic overconstraining leaf module bottom-up compile. A default set of constraints, wireloads, and scripts are used for these first initial builds to provide base results. As the virtual silicon prototyping process progresses, these constraints, wireloads, and scripts are optimized as the design is refined at different levels of detail. As development of the leaf modules stabilizes, this is followed by a full chip top-down compile and final chip level optimization/assembly.


Figure 29

Several of the RTL exploration and floorplanning tools can automatically partition your RTL code into blocks that are efficiently sized for RTL synthesis. Here is an example of this synthesis heirarchy generation capability with automated heirarchical synthesis script generation. I'll go into this in more detail later in Part 5, when I present several different automation techniques.

Design Compiler

Synopsys has the lions share of the synthesis market, with Design Compiler and Physical Compiler available in most ASIC design houses. The Synopsys-Avanti "powerflow" is already familiar to most ASIC designers, so I'll refer you to the ESNUG archives and the DeepChip website, by John Cooley, for more information about Synopsys synthesis issues and techniques.


Figure 30

DesignCraft

Incentia Design Systems has been making good strides in the ASIC synthesis market, with tapeouts from several customers.

DesignCraft is Incentia's logic synthesis product. It takes an RTL design and synthesizes a gate-level netlist. TimeCraft is Incentia's full-chip, gate-level, static timing analyzer product. DesignCraft Pro is the physical synthesis solution in Incentia's product family. It links logic synthesis with Incentia's proprietary placement technologies, and it performs simultaneous logic and physical optimization from RTL descriptions to placed gates.

Designers familiar with the Synopsys Design Compiler (DC) have no problems quickly adapting to DesignCraft. I had good results using the Incentia TransCraft script translator to import DC-shell scripts. I was also able to use the TCL interface to "replace" commands with my own versions for compatibility with existing scripts.


Figure 31

The DesignCraft GUI is integrated with the embedded TCL interpreter, yielding an easy to expand user interface. I've been able to run several of the evaluation designs and have been impressed with the quick results. Below are example screenshots including the read and schematic views.

DesignCraft - Read View Screenshot

DesignCraft - Schematic View Screenshot

Topomo

Get2Chip is also finding their place in new synthesis flows with their Volare and Topomo products, intended as architectural and system compilers for SOC designs, respectively.

Volare reads a "pins-out" cycle-accurate functional description of a design and creates a timing accurate gate-level netlist. Many commercial behavioral synthesis tools will only take into account the delays of the behavioral elements (datapath blocks and logic gates) but will not account for the delays associated with FSM blocks, multiplexers, or wiring loads. That can make it difficult to correlate the timing behavior of the generated RTL code with the gate-level netlist generated after RTL synthesis.

Volare works in conjunction with Topomo, a system compiler for SOC designs, to perform silicon virtual prototyping. Volare is driven by the design goals to select a micro-architecture based on the target technology library. Topomo then performs topology modeling, partitioning, placement, shaping, synthesis, and wire planning, yielding placed gate level netlists.

A great feature of the Get2Chip products is the end user licensing agreements. Get2Chip site licenses allow customers to put Volare/Topomo on their Intranets integrated with other Web-based tools. This kind of flexibility is greatly appreciated by customers.

I'm looking forward to working with these tools in more detail, and I'll have more to report after running some of the sample designs through them.


Figure 32

Volare screen shot

Topomo screen shot

Synplify ASIC

Synplicity has done well in the FPGA synthesis market, steadily building market share. Building on the speed and capacity of their FPGA synthesis tools, Synplicity has also entered the ASIC synthesis market.

Many designers like the ability to perform rapid system prototyping using FPGAs prior to committing an ASIC to silicon. The Synplicity Certify tool can perform drag-and-drop paritioning across several physical FPGA devices. The Synplicity Amplify physical compiler for FPGAs lets you sqeeze the performance from each partition. Then you can use the Synplfy ASIC synthesizer to generate your ASIC netlists from the same RTL sources.

Synplify Pro has been pretty easy to use for FPGAs, and the Synplify ASIC synthesizer looks as easy to use. I'm looking forward to running some of the evaluation designs through their latest release, as I just received new license files.


Figure 33

Synplify screen shot

Certify screen shot

New Design Flows

I've shown several of the new choices available for the RTL synthesis step of the design flow, moving from RTL level to a gate level netlist representation. Most designers are now following this step with heirarchical gate level placement and analysis/optimization tools such as First Encounter, TeraPlace, or Physical Studio prior to detailed routing. We'll examine some of these flows in Part 4 of this series.


Figure 34

Designers now have some variety in performace, capacity, platforms, licensing agreements, and support plans from several synthesis vendors. Flexible licensing is also an issue for companies with many locations and intranets. Customers are increasingly demanding Linux platform support, as 1.6 GHz PC's are inexpensive and available. And most people see a fairly linear decrease in RTL synthesis runtimes as the processor speed increases.

Coming next in Part 4

Coming next in Part 4 of this series I'll demonstrate how to integrate these flows with physical layout and signal integrity tools.

Tom Moxon is the founder of Moxon Design, an electronics design consulting organization. He has designed integrated circuits for a number of client companies, including Cray Research, Adobe Systems, Hewlett Packard, Silicon Graphics, Rohm, and Hyundai Electronics. Tom has been working for several years on web enabling EDA and CAD infrastructures, and is researching EDA applications using XML/XSLT, RDF, DAML, and XML-RPC. When he's not "slinging gates" for a living, Tom is often called upon to torture test new EDA tools before they are inflicted on the remainder of the engineering community.






  Free Subscription to EE Times
First Name Last Name
Company Name Title
Email address
  Click here for your Free Subscription to EETimes Europe
 
CAREER CENTER
Looking for a new job?
SEARCH JOBS
SPONSOR

RECENT JOB POSTINGS
CAREER NEWS
IBM Cuts Over 2,500 Jobs
IBM Corp. this week reportedly cut over 2,500 jobs, according to a union.

For more great jobs, career related news, features and services, please visit EETimes' Career Center.



All White Papers »   

  Design Resources
Designing for a dual Galileo-based GPS system
Malcolm Lomer of SiGe Semiconductor discusses GPS design challenges with the Galileo satellite system.
More »
 
Education and
Learning


Learn Now:












Home | About | Editorial Calendar | Feedback | Subscriptions | Newsletter | Media Kit | Contact | Reprints|  RSS|   Digital|  Mobile
Network Websites
International
Network Features




All materials on this site Copyright © 2010 EE Times Group, a Division of United Business Media LLC All rights reserved.
Privacy Statement | Terms of Service | About