Backend Design Flow
Backend Design Flow
Backend Design Flow
Specification
Logic Verification
IC Design
Logic/Physical Synthesis
Floor-planning
Power Planning
Placement
Routing
Specification
IC Design
Logic/Physical Synthesis
Floor-planning
Power Planning
Backend
Placement
Routing
Inputs :
1. Verilog RTL code (HDL),
2. Library (Cell Library, contains logic and timing information)
3. Design constraints
Synopsys Design Compiler being the most widely used tool for
logical Synthesis
Maximum Speed.
Minimum Area.
Minimum Gate Count.
Minimum Sequential Elements.
Minimum Power Consumption.
Maximum Reliability.
Design Objects
Design
Circuit description that perform some logical function.
Cell
A unique instance of design within another design.
Reference
The instantiated sub design or lib cell.
Port
Inputs and outputs of design.
Pin
Inputs and outputs of cells within a design.
Net
Wires that connect ports to pins and pins to each other.
Clock
Clock of design.
design1/port1 u1/pin1
design1/port3
design1/port2 u1/pin2
u1 u2
U2/pin3
design1
Cells and References
References Link Library
Tech lib
nand2 nand2
u1 nand2
and3_H
nand2
u2 multiplier
Adder
nand2 multiplier
u3 multiplier
u4
Develop HDL files
Define Design
Environment Netlist
Set Design
Constraints
Technology Library
Technology libraries contain information about the
characteristics and functions of each cell provided in a
semiconductor vendor’s library.
Cell characteristics include information such as cell names, pin
names, area, delay arcs, and pin loading.
DRC: Design Rule Constraints
Operating conditions
Wireload models specific to that technology
In Synthesis Technology library is used for-
-Mapping
-Calculating timing and Path delays
-Resolving cell references
-Calculating power consumption
Operating Conditions
Operating temperature variation
To model the effects on performance caused by temperature
fluctuations.
Supply voltage variation
The design’s supply voltage can vary from the established ideal
value during day-to-day operation. It is used to model the effect
on performance of design.
Process variation
This variation accounts for deviations in the semiconductor
fabrication process. Usually process variation is treated as a
percentage variation in the performance calculation.
****************************************
Report : library
Library: my_lib
Version: 1999.05
Date : Mon Jan 4 10:56:49 1999
****************************************
...
Operating Conditions:
Name Library Process Temp Volt
-----------------------------------------------------------------
WCCOM my_lib 1.50 70.00 4.75
WCIND my_lib 1.50 85.00 4.75
WCMIL my_lib 1.50 125.00 4.50
Wireload Models
To estimate the effect of wire length and fanout on the
resistance, capacitance, and area of nets. Design Compiler
uses these physical values to calculate wire delays and circuit
speeds.
Semiconductor vendors develop wire load models, based on
statistical information specific to the vendors’ process.
The models include coefficients for
Area per unit length
Capacitance per unit length
Resistance per unit length
A fanout-to-length table or slope for estimating net lengths (the
number of fanout determines a nominal length).
Three modes for Hierarchical Designs
Top
Enclosed
Segmented
****************************************
Report : library
Library: my_lib
Version: 1999.05
Date : Mon Jan 4 10:56:49 1999
****************************************
Wire Loading Model:
Name : 05x05
Location : my_lib
Resistance : 0
Capacitance : 1
Area : 0
Slope : 0.186
------------------------------------------------------------------------
1 0.39
System Interface
Drive Strength
Mapping
– This process uses gates (combinational and sequential)
from the target technology libraries to generate a gate-level
implementation of the design whose goal is to meet timing
and area goals.
Delay optimization
– The process goal is to fix delay violations introduced in the
mapping phase.
– Delay optimization does not fix design rule violations or meet
area constraints.
Compilation
After complete flow we write out the netlist and sdc file.
Typical Place & Route Tool Flow
Objectives of Floor-planning
22
Important Terms
The placer distributes the cells across the available core area,
minimizing wire length and ensuring constant delay.
All the standard cells are placed in cell rows with no overlapping of
cells.
Congestion and timing are two main aspects to be taken care of
during placement.
Congestion comes when cells are placed in such a manner that
there are problems in routing them.
We also need some area margin for CTS and further optimization
later on in the flow.
Power Planning
Core Ring
Block rings
Core boundary
Block B
26
Clock Tree Synthesis
• The clock topology is built at this stage and all the clock nets are
routed.
• Depending on the tool capability there are various clocking schemes
available
• Optimization is done to achieve balanced clock tree structure and
system timing.
• After builiding the Clock tree another iteration of placement.
• Key terms:
– Insertion Delay
– Skew
– Clock Topologies: H-Tree, Custom, Fish-bone etc
Clock Tree Synthesis
After all the Violations are fixed we can stream out the GDSII, SDF,
SPEF etc.
RTL to GDSII Flow
Logical Library,
RTL, Design
Constraints
Netlist, SDC,
Physical library
GDSII, post-layout
netlist, SDF, SPEF
**STA is done at
all the stages
Thanks !!