PrimeTime Slides
PrimeTime Slides
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
Outline
• Suggestions
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
Static Timing Analysis
• What’s STA
• STA is a method of validating the timing performance of a
design by checking all possible paths for timing violations.
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
Static Timing Analysis
HDL Macros
delay file Libraries:
Coding
_post.sdf *.lef
Design Entery Floor Planning
Layout *.tlf
gds/gdsII *.def
Gate Verification/
Equivalent Check
Layout Check Tapteout
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Overview
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Input/Output
• Inputs:
– Netlist file
• Verilog/VHDL/EDIF
– Delay format:
• SPEF/SPF/SDF
– Database file (DB):
• Determine the cell delay
– SDC file:
• Define the design to PT
• Outputs:
– Timing Analysis Reports
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - STA Flow
Setup Design
Specify
Timing Constraint
Specify
Timing Exception
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Setup Design
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Timing Constraint
• Timing Violations
– Setup violations happen when data changes less than tSetup before the
rising edge of the clock.
• The maximum data path is used to check setup violations
– Hold violations are similar to setup violations but data changes less
than tHold after the rising edge of the clock.
• The minimum data path is used to check hold violations
Figure from reference “PrimeTimeStatic Timing Analysis Tool”, George Michael, 2006
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Timing Constraint
• Clock Period Constraint
TCombinational logic + FFlauch(clk -> Q) < Clock Period - FF tSetup - Clock Uncertainty
TCombinational logic + FFlauch(clk -> Q)> FF tHold + Clock Uncertainty
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Timing Constraint
• Clock Period Constraint (script)
set_propagated_clock [all_clocks]
# specifies that PrimeTime realized the latency for each clock path. This
command should be used during post route analysis.
read_sdc top_level.sdc
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Timing Constraint
• Input Delay
– Specify the delay of external logic driving current design
Script:
set_input_delay -clock clk_in -max #[get_ports i_*]
Figure from reference “PrimeTimeStatic Timing Analysis Tool”, George Michael, 2006
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Timing Constraint
• Output Delay
– Specify the delay of external logic driven by current design
Script:
set_output_delay -clock clk_in -max #[get_ports O_*]
Figure from reference “PrimeTimeStatic Timing Analysis Tool”, George Michael, 2006
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Path Delay Calculation
• path delay = cell delay + net delay
0.12
0.21
0.4
0.82
1.28
0.62
0.5
Path Delay = 0.5+0.4+0.62+0.21+1.28+0.12+0.82=3.95 ns
– Use the worst case delay when testing for setup violations
– Use the best case delay when testing for hold violations
Script:
set_operating_conditions <worst/best-case>
Operating condition is defined in library
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Timing Exception
• False Path
– paths in a design were a designer would not want the
timing arcs to be calculated
• Paths not relevant to functional operation of the circuit
• paths which are impossible to exercise
• Paths cross different clock domains
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Generating Reports
• Report Timing (continued)
report_timing -from -to
# If this commands is not used PrimeTime will default to the longest path
(critical path) in the design
-path full_path
# This option reports not only the data path but the launching and
capturing clock path. Set_propagated_clocks must be set for this
option to properly report the clock paths.
-delay {max|min}
# max: PrimeTime reports setup time/min: PrimeTime reports hold time
-max_paths
# This variable states the total number of paths to be reported per group.
The default is one.
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Generating Reports
• Report Violation
report_constraints -all_violators
# This command generates a summary of all paths that are violation setup
and hold times as well as and any cells that violation a design rule such as
fanout, capacitance, and transition. Viewing this one report will tell you if
changes will need to be made to your design.
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - Generating Reports
• Report Clock Timing
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - setup Reports
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
PrimeTime - hold Reports
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
Some suggestions
• Notes/comments are even more important
//-----------------------------------------------------
// Design : CARRIER SENSE
// File Name : CARRIER_SENSE.v
// Purpose : Model of CARRIER SENSE process in PCS (IEEE Std 802.3)
// Limitation : none
// Errors : none known
// Include Files: none
// Author : Liang Liu, liang.liu@eit.lth.se, Lund University
// Simulator : ModelSim 6.5
//---------------------------------------------------
// Revision List:
//+-----------+--------------------+-----------------+----------------------------------+
//| Version | Author | Date | Changes |
//+-----------+--------------------+-----------------+----------------------------------+
//|1.0 | Liang Liu | 2001/08/03 | original created |
//| 1.0 | Liang Liu | 2002/01/04 |disable TX_EN to CRS |
//| | | |in repeater mode |
//+-----------+--------------------+------ -----------+----------------------------------+
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
Some suggestions
• Name the files/signals
File name:
module file starts with “m_”, test bench starts with “tb_”
e.g., netlist name “syn_” for DC out, “pr_” for Encounter out
Signals:
inputs starts with “i_”
outputs starts with “o_”
clocks starts with “clk_”
resets starts with “rst_”
register out put ends with “_r”
low-valid signal ends with “_n”, e.g., rst_n
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
Some suggestions
• Pre-/Post layout design
Getting experienced by comparing pre- and post- layout design
Set reasonable timing margin to avoid LARGE loop in design flow, e.g.,
- clock_uncertainty : justify the value with post-layout report
- clock_period: post-layout period= pre-layout period+margin, depending
on process technology
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
Sources
• Man command
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
To start PrimeTime
• Change to the folder where you want to run PrimeTime, and executeƚŚĞ
ŝŶŝƚŝĂůŝnjĂƚŝŽŶĐŽŵŵĂŶĚĨŽƌƌƵŶŶŝŶŐƚŚĞƚŽŽůƐ
• Initializes the environment and copies some setup files (if required)
Liang Liu, EIT, LTH, Digital IC project and Verification Static Timing Analysis
Digital IC-Project and Verification
Power Analysis
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
Outline
• Power Dissipation
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
Power Dissipation
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
Power Dissipation
CMOS Power = static power + dynamic power
Figure from “Expanding the Synopsys PrimeTime Solution with Power Analysis”, Synopsis, inc
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
Power Analysis Requirement
Netlist Power Signal Net
Data Model Activity Parasitic
Power Analysis
(Synopsys PrimeTime PX)
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
Power Analysis Modes
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
PrimeTime PX Flow
Setup PA Mode
Link Design
Annotation &
Reading Activity
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
PrimeTime PX - Setup PA mode
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
PrimeTime PX – Link design
• Set the search path and the link path
set search_path “lib path”
set link_library “*top_design.db”
set target_library “top_design.db”
• Read the design and the libraries
read_verilog top_level.v
current_design "top_level“
• Link the top design
link_design
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
PrimeTime PX – annotation & activity
• Annotate parasitic
read_parasitics top_level.spef
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
PrimeTime PX – annotation
• Requirement
• >90% covering rate is required for accurate power
analysis
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
PrimeTime PX – power analysis
• Power analysis
check_power
update_power
• Report power
report_power -verbose –hierarchy > power.rpt
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
PrimeTime PX – report
****************************************
Report : Time Based Power
Design : m_top_siso_detector_la
Version: F-2011.12-SP1
Date : Wed Feb 13 09:19:10 2013
****************************************
Attributes
----------
i - Including register clock pin internal power
u - User defined power group
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
PrimeTime PX – spef
• Output Parasiticsin SoC Encounter
@ shell
rcOut –spef ./netlists/top_level.spef
@ GUI: Timing->Extract RC
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
PrimeTime PX – Post_layout Sim
Add Library (mem lib uses behavior model)
Simulate->Start Simulation
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
PrimeTime PX – Post_layout Sim
Annotate SDF
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
PrimeTime PX – Post_layout Sim
Optimization setup
Higher resolution,
more accurate
estimation
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis
PrimeTime PX – Post_layout Sim
Dump VCD File
vcd file ./nestlists/medianfilter.vcd
vcd add –r /medianfilter_tb/dut/*
run –all
Liang Liu, EIT, LTH, Digital IC project and Verification Power Analysis