CDNLive2012_ETS(Encounter Timing System) Multi

advertisement
ETS (Encounter Timing System) Multi-Mode Multi-Corner
ECO for hold SI timing fixing
Bing Shao, Lois Li, Xia Ai
(VIA Tech)
Abstract:
In this paper, we describe the new feature of ETS (Encounter Timing System)
named Multi-Mode Multi-Corner ECO (Engineering Change Order), and show
utility with the example of the running scripts. By running on two real cases to
fixing the post-Route hold SI timing, we give the summary of the results of timing
and TAT and memory.
1 Overview
With the development of technology and increasing of integrated scale, at 40nm
and the high technologies, many cores and many modes should be sign off for
the process variation and working scenario. For example, one of our designs at
TSMC 40nm, we should sign-off at 4 setup views and 8 hold views and 8 function
modes.
As we know, at the post Route stages, optimization of the implementation tools
should keep many factor in consideration such as timing optimization, area
reduction, DRV fixing and routing, so the capability of PR tools is limited, and run
time is very long for multi-corners, so another methodology for post-Route timing
and SI timing fixing is prefer to be incremental to save the run time and memory
usage. And ECO (Engineer Change Order) methodology is used to clean up the
remaining timing violations, there are many point tools or features can do the
ECO such as Tweaker(Dorado), Olympus(Mentor), ETS(CADNECE).
Timing was not optimized across all analysis views during implementation flow to
avoid over-fixing and designer is relying on Sign-Off stage to catch real violations,
it is the main reason of requirement for the ECO. And there is other reasons for
the ECO such as block level vs top level timing analysis do not match which may
be caused by timing budgeting was not precise or not always performed (for Hold
timing); additional corners and/or modes are added at the time of signoff; timing
model differences between implementation and sign-Off.
2 ETS MMMC Signoff ECO Feature
It is the new feature available in ETS to address the concerns mentioned above.
It is easy to plug-in in any SignOff analysis flow and allows users to clean up the
remaining timing violations. This feature capacity allows fixing timing violations
on large designs (multi-million instances) with many analysis views.
The Key Features of ETS MMMC ECO is as the following:
•
•
•
•
•
•
•
Focus on timing convergence by being MMMC-aware, STA Sign-Off
aware, SI-aware and Physical-aware (optional).
Concurrent and distributed timing analysis. Highly scalable.
Targets minimal buffer insertion and resizing for timing closure.
The local density and congestion will be considered when adding buffers
in Physical-aware mode.
Support for MSV designs.
Honoring all modules/instances/cells/nets/clocks specific attributes.
Needs only one single ECO loop to close timing.
3 MMMC Sign-Off ECO flow
The integrated Sign-Off ECO flow is composed of three parts generally. Firstly,
generate the timing ECO at ETS and write the ECO files. Secondly, read the
ECO files to implementation tools such as EDI (Encounter Digital
Implementation), doing ECO placement and ECO routing, and running Sign-Off
QRC Extraction. Finally, we should do sign-off STA using timing sign-Off tools
such as ETS to check the timing after ECO base on the extraction after ECO
database. As the following picture showing:
Pic 3-1 MMMC sign-Off ECO flow
4 Two methods to perform MMMC Sign-Off ECO in ETS
There are two methods to perform MMMC sign-off ECO, and the user can select
the way to do according the requirement.
a. Timing fixing with embedded Distributed Timing Analysis
In this mode, the software will load the design/libraries data, run Distributed
Timing Analysis to collect the timing information per view, optimize timing, and
finally re-time the design based on the ECO change committed.
This is the simplest use model since everything is automated in single step. It
requires that the number of CPUs available is more or equal to the amount of
Setup + Hold unique active views.
b. Timing fixing with previously generated ECO db from ETS.
In this mode the tool will load the design/libraries data, then read the previously
generated ECO timing db, optimize timing and report the final timing based on
the evaluated timing.
This allows the user to run fixing on many more views, since there is no limit on
the amount of active views.
5 Two modes to perform MMMC Sign-Off ECO in ETS
There are also two modes to run the ECO, one is logic mode, and the other is
physical-aware mode.
At logic mode, we just read the logic information to ETS, while at physical-aware
mode, we should read the physical information to ETS such as physical library,
and DEF file.
Physical-aware mode can get much better results than logical mode, as the
following results from CDN’s report showing. At our real case, ETS running at
logic mode degrade the setup timing mostly because the large detour when
ecoRoute in EDI, and when come to physical-aware mode, the correlation
between ETS and EDI is very good.
The following is the example of the scripts for logic mode and physical-aware
mode for the reference.
a. Timing fixing with embedded Distributed TA using Logical mode
read_lib $liberty
read_verilog $netlist
set_top_module my_top
source viewDefinition.tcl
set_distribute_host -local
set_multi_cpu_usage -localCpu 8
set_eco_opt_mode –buffer_cell_list “BUFX1 BUFX2 BUFX4 BUFX6 BUFX8
DLYX1 DLYX2 DLYX4"
eco_opt_design –hold –analysis_script sta.tcl
Note: sta.tcl must contain read_spef command for every active rc_corner, and SI
analysis settings in case SI timing is requested for SignOff.
b. Timing fixing with embedded Distributed TA using Physical-aware
mode
read_lib $liberty
read_lib –lef $lef
read_verilog $netlist
set_top_module my_top
source viewDefinition.tcl
read_def $def_file
set_distribute_host -local
set_multi_cpu_usage -localCpu 8
set_eco_opt_mode –buffer_cell_list “BUFX1 BUFX2 BUFX4 BUFX6 BUFX8
DLYX1 DLYX2 DLYX4"
eco_opt_design –hold –analysis_script sta.tcl
ECO timing DB generation using D-MMMC :
set_distribute_host -local
set_multi_cpu_usage -localCpu 8
distribute_read_design \-design_script loadDesign.tcl -outdir .
distribute_views -views $setup_and_hold_views \-script sta.tcl
Content example for sta.tcl :
read_spef -rc_corner rc_max max.spef.gz
read_spef -rc_corner rc_min1 min1.spef.gz
read_spef -rc_corner rc_min2 min2.spef.gz
set_eco_opt_mode –save_eco_opt_db mySignOffTGDir
write_eco_opt_db
Timing fixing using previously generated ECO timing DB :
source loadDesign.tcl
set_analysis_view –setup [list $setup_views] \-hold [list $hold_views]
set_distribute_host -local
set_multi_cpu_usage -localCpu 8
set_eco_opt_mode –load_eco_opt_db mySignOffTGDir
set_eco_opt_mode –buffer_cell_list “BUFX1 BUFX2 BUFX4 BUFX6 BUFX8
DLYX1 DLYX2 DLYX4"
eco_opt_design –hold –analysis_script sta.tcl
Note: The eco_opt_design command will automatically skip the
set_eco_opt_mode and write_eco_opt_db commands from sta.tcl file because
ECO timing DB information is already provided. Same methodology applies to
Physical-Aware mode.
6 Case study of MMMC Sign-Off ECO
We have evaluation the ETS-MMMC sign-off ECO at physical-aware mode for
two real projects. Both of them can get the good results for base timing and SI
timing, ETS-ECO get some better results with littler memory usage at some short
run-time than other point tools. The following is the results of ETS-MMC ECO
including SI timing for reference.
a. The results of case A
„ T40 process, 2M instances
„ Frequency
• 500MHz
„ Stage
• PostRoute setup timing clean, not fix hold timing yet.
„ Corner
• 1 setup view, 3 hold view
b. The results of case B
„ T40 process, 1.4M instances
„ Frequency
• 1.4GHz
„ Stage
• PostRoute setup timing clean, one loop fix hold timing in one
function hold view in EDI yet.
„ Corner
4 setup view, 8 function hold view, 8 atpg hold view
7 Summary
As the requirement of incremental ECO methodology for the postRoute hold
timing fixing, ETS-ECO show the good performance at timing closure and
memory usage and run-time as the following table showing the advantage.
n ETS advantage
„ Can perform MMMC hold fixing well on large design with multianalysis views.
„ The run time and memory consumption are acceptable.
„ The physical-aware mode will bring good correlation between EDI
& ETS. More easy to plug-in in signoff flow
And we also hope ETS can get much more enhancement as the following points
„ Not only insert buffer to fixing the hold timing, we hope there are
other method such as useful skew and resize cells to decrease the
increment of the size area.
„ Post-Route scan chain re-order method for the hold timing violation
at testing mode.
„ ETS MMMC-ECO will be very competitive if it can read the SDF
from PT, and get good correlation with PT/SI.
Download