|
We recently studied
the Composite Current Source (CCS)
model and Effective Current Source (ECSM)
models in detail. After analyzing
the similarities and differences
between the formats, we developed an
open-source translation tool that
converts Liberty CCS libraries to ECSM.
We feel that this tool can be very
useful to the EDA industry so we
made it available for free by
posting it on the Liberty Forum:
http://synopsys.infopop.net/1/OpenTopic?a=cfrm&s=7741942603&f=340199990
Background on our
Company:
Electronic Tools
Company (E-Tools) develops and
distributes high quality translators
that simplify tasks of integrating,
migrating, and archiving design data
from various EDA platforms. E-Tools
is a strong supporter of standards
like the Liberty format, EDIF and
XML. Over the last decade, we
provided the best EDIF and XML tools
to the EDA industry on Mentor
Graphics, Viewlogic and Cadence
Design Systems platforms. In 2000,
E-Tools developed the first version
of the Liberty open-source parser
for use by the entire electronics
industry. Over the past 6 years, we
have consistently updated the
Liberty parser, driven by extensions
of the Liberty format and via
enhancements from numerous Liberty
parser users. On July 26, 2006,
E-Tools won the Tenzing Norgay
Interoperability Award in
recognition for the work done on
Liberty parser.
CCS and ECSM:
We have been
following the recent advances in
library modeling technology and
we agree with many ESNUG
readers that current-based modeling
is the way to go for 90-nm & below
process nodes. The problem for many
companies is that they have two
formats to choose from. If they
have a multi-vendor tool flow,
there's a good chance they need to
support both CCS and ECSM. Since
ECSM is a set of user-defined
attributes in Liberty, it does not
interfere with the standard Liberty
CCS syntax. In other words both CCS
and ECSM can co-exist in the same
.lib. However, library file size
becomes an issue: Current-based
models contain a lot more data than
Non-Linear-Delay Models (NLDM.) Our
analysis has shown that both CCS and
ECSM libraries are roughly the same
in size but are each about 8X the
size of NLDM. Of course library
size depends on many factors
including the number of index
points, current/voltage segmentation
tolerance and so on. But 8X is a
good rule-of-thumb. If your timing NLDM
.lib is 30Mb, you can expect your
CCS and ECSM timing libraries to be
240Mb each. Then total library size
of NLDM+CCS+ECSM = 510Mb. Multiply
this by many corners and data-size
becomes overwhelming.
What we have
discovered, however, is that the CCS
data is a super-set of the ECSM
data. The good news from this is
that designers can use CCS models as
their main libraries and they
can re-create ECSM from CCS if
needed in a matter of minutes. Best
of all, in-theory, these indirectly
created ECSM models should be as
accurate as the natively generated
ones. Note that the converse is not
true. Since CCS timing models
contain direct current waveforms (as
opposed to voltage waveforms) and
have a 2-Capacitor receiver model
(as opposed to one), they cannot be
accurately re-created from ECSM
models. In other words if you
convert ECSM to CCS, the resulting
models will be less accurate than
the natively generated CCS models.
How our CCS2ECSM
translator works:
To translate from CCS
to ECSM, we perform 5 steps:
1- Parse the .lib
containing CCS: This is simple
since we developed the parser in the
first place.
2- Create the driver
voltage waveform: The CCS current
source model consists of current
samples as a function of time. This
current is the measured current that
flows into the known load capacitor
during characterization. Since we
know the value of the capacitor and
we have the current samples as a
function of time, it is a simple
matter to numerically integrate to
get the corresponding voltage
waveform. Since the CCS segmentation
algorithm controls error in this
resurrected voltage waveform during
characterization you can be assured
that the integration will be
accurate. In other words we can
recreate the voltage waveform. Note
from this voltage it is
straightforward to extract an
equivalent NLDM or ECSM model.
3-Create the ECSM
driver voltage waveform: ECSM
consists of samples of the driver
voltage waveform as a function of
time. It is straightforward to
sample the voltage waveform above to
create the ECSM driver waveform.
Typical ECSM libraries have samples
at fixed voltage values, so if you
want 10 sample points, you sample
at: 10%Vdd, 20%Vdd etc.
4-
Create the ECSM receiver capacitors:
CCS uses a two segment capacitor and
there is subtlety in the way it
which it models the dependency on
input slew. The two segment model
means that the input slew is
considered as a two segment slew.
The ECSM receiver
capacitor model uses one segment and
treats the input slew as uniform. We
have implemented a number of
translation schemes. But the two
approaches that we recommend are (i)
take the average of the C1 and C2 as
the ECSM receiver cap, or (ii) only
take the C1 value. The latter model
will match the delay and have some
pessimism in the slew calculation.
5- Take data from 2 &
3 and properly format into ECSM
models.
How to get CCS2ECSM:
Our CCS2ECSM
translation tool is available for
free. It's an open-source tool that
we will upload as an attachment to a
posting on Liberty Forum. Here's a
link to the liberty forum:
http://synopsys.infopop.net/1/OpenTopic?a=cfrm&s=7741942603&f=3401999903
Since this tool is
open-source, it can be downloaded,
modified and improved by anyone
interested. In fact, we welcome
industry experts who want to improve
on this tool and re-post it on
Liberty Forum. E-Tools has the
expertise to provide bug fixes or
other necessary support for this
tool, but given our company size and
very limited resources, we cannot
commit to do it free of charge in
the long term. If a company
requires any specialized support,
they should feel free to contact us:
antoinebigirimana@yahoo.com or
antoine@e-tools.com .
Send feedback to:
Electronic Tools Company
928 First Street West
Sonoma, CA 95476
Fax: +1 (707) 939-0246
Telephone: +1 (707) 996-3320
e-mail:
sales@e-tools.com |