Professional Documents
Culture Documents
Yi Zhang
Jan 30th, 2015
Design Specification
• Logic Optimization
• Netlist Generation
Analog Circuit Logic Synthesis DC, RC (Cadence)
• Netlist Optimization for
Area, Timing, and Power
• Floorplan;
• Power Planning;
Auto-Place&Route • Placement, CTS, Routing; ICC/ICC2, EDI (Cadence)
…… • DRC Fixing, Timing
closure, Area, and Power
Digital Circuit optimization.
Initializing...
dc_shell>
Initializing...
dc_shell>
Initializing...
dc_shell>
Initializing...
dc_shell>
Initializing...
dc_shell>
Initializing...
dc_shell>
Initializing...
dc_shell>
Initializing...
dc_shell>
Initializing...
dc_shell>
Initializing...
dc_shell>
DC Explorer
Initializing...
de_shell>
Initializing...
dc_shell>
DC Explorer
Initializing...
de_shell>
HDL Source
Optimize + Map :
dc_shell> compile(_ultra)
Generic Boolean
(GTECH)
Target Technology
© 2015 Synopsys, Inc. All rights reserved. 17
DC Synthesis Flow - Steps to Perform Synthesis
Generate HDL
Source Code
Library Setup
HDL in
Constraining
Synthesis
Compile
Generate HDL
Source Code
Library Setup
HDL in
Constraining
Synthesis
Compile
Generate HDL
Source Code
HDL in
Constraining
Synthesis
Compile
Generate HDL
Source Code
Library Setup
Constraining
Synthesis
Compile
– Elaborate:
– Reads the intermediate files and translate the design into its GTECH representation
– Allow changing of parameter values defined in the source code
– Performs link automatically
• Presto:
– Is enhanced HDL reader
– Increased elaboration speed
– Increased capacity in supporting additional language construct
– Variable hdlin_enable_presto set to false to turn off Presto (default true).
Generate HDL
Source Code
Library Setup
Design:
• dc_shell> analyze ; elaborate • GTECH
• dc_shell> read_file –format verilog|VHDL
HDL in representation
• Presto reader on/off effects elaborate result • With DW
• set hdlin_* variables to control HDL in process components
Constraining
Synthesis
Compile
Generate HDL
Source Code
Library Setup
HDL in
• Design environment:
• Operating condition
• Wire Load Model (WLM)
Constraining
Synthesis • System interface
• SDC
• Area
• Design Rule
Compile
Generate HDL
Source Code High-Level Optimization
Datapath Optimization
Sequential Mapping
Auto-Uniquification
Constraining
Synthesis
Implement Synthetic Parts
Area Recovery
1 0 111 0 1 0 1 0 1 0 11 0 1 1 0 111 0 1 0 1 0 1 0 11 0 1
+ 100 0101011101001 + 1 0 0 0 1 0 1 0 111 0 1 0 0 1
1 0 1 0 0 0 1 0 11 0 0 1 0 11 0 2011202021202102
10000101100010001001100010010010
CPA: carry-propagate adder: propagate carry to the left bit, and delay is proportion to n (bit num of data).
CSA: carry-save adder: does not propagate carry, delay is independent to n. It performs addition for each bit
simultaneously, and produce an intermediate result for each bit. The intermediate result can be used to :
A. interpret final result through several-steps manipulation, including conditional assign and shift
B. pass to next stage CSA adder.
In order to pass the intermediate result to next stage adder, the connection to the 2nd adder should be transformed,
such as adding more redundant bits.
The last adder should be a CPA adder, to interpret the final result. E.g.: A (CSA) B (CSA) C (CPA) D
So it is best to include as much connected arithmetic operators as possible to be transformed to a datapath block, to
achieve best QoR
Datapath Implementation: Extracted datapath blocks are implemented by Design Ware datapath
generator.