( ESNUG 370 Item 8 ) -------------------------------------------- [05/17/01]
Subject: ( ESNUG 368 #1 ) Synopsys Also Does Strange DCL Support, Too!
> We were asking Avanti to complete the implementation of IEEE 1481 by
> including support for DCL/OLA (Ch1-8). They already support most of
> Ch 9-10, SPEF and PDEF. ...
>
> - Dan Moritz
> LSI Logic Minneapolis, MN
From: Chris Kiegle <ckiegle@us.ibm.com>
Hey John,
I know of a couple other companies that are working to use DPCM/DCL
libraries and the DPCM/DCL interfaces in Synopsys, but we still hear that
we are the only ones asking for these things. (DPCM is Delay and Power
Calculation Model library. Some people call it DCL.)
Something we hit on was a difference in the create_operating_conditions
constraint setting. Synopsys made changes in the DC commands between
99.10 & 2000.05 to make the commands the same in DC & PrimeTime.
In 99.10, the syntax for create_operating_conditions in dc_shell is:
create_operating_conditions -name OP1 -library My_library \
-temperature 100 -calc_mode worst_case -rail_voltages "VDD 1.8"
A "-temp" could be used as a short form for the temperature and DC would
also honor default value settings that existed in the rules. The user
would only have to set the values that were changing.
In 2000.05 / 2000.11, the syntax is
create_operating_conditions -name OP1 -library My_library \
-temperature 100 -process 1 -voltage 1 -calc_mode worst_case \
-rail_voltages "VDD 1.8 VDD2 1.4 VXX 3 ........"
The "-temperature", "-voltage", and "-process" ALL require value settings,
but the "-voltage" and "-process" aren't used by DPCM libraries. Those
variables were added in for the SPDM (Scalable Polynomial Delay Model)
library support. For DPCM, the calc_mode & rail_votages are used just like
in DC 99.10 with the exception that the rail_voltages setting must contain
settings for every rail voltage in the library rather than just those that
require changes from the default values.
A second thing we found is a difference in the way DC reads in the DCL
libraries between dc_shell and dc_shell tcl modes. Dc_shell reads in
DCL libraries, along with the .db files, when a design is read in.
In the dc-tcl shell, *only* the .db libraries are read in with the
design. A read_lib still only reads in the .dbs. Compile, report_timing,
and report_lib will cause the DCL libs to be read in. IT IS TOO LATE AT
COMPILE TIME IF YOU WANT TO SET DIFFERENT OPERATING CONDITIONS. Currently,
the operating conditions are set against the library and they can only be
modified if the library has been read in. So, the current flow we are
using is to 1.) read in a design, 2) do a report_lib, and then 3) set all
of the design constraints.
It's kind of stupid to have to do it this way.
- Chris Kiegle
IBM Essex Junction, VT
|
|