( ESNUG 458 Item 7 ) -------------------------------------------- [11/16/06]
Subject: ( ESNUG 448 #8 ) Looks like ECSM works & it's 1/3 the size of CCS
> In order to have a more accurate model for voltage variations, Cadence
> and Magma promote ECSM extension for Liberty format while Synopsys
> promotes CCS. I am looking for other users impressions and evaluation
> results of these models, considering accuracy and speed of timing
> analysis and ease and speed of library characterization.
>
> - Ori Chalak
> Analog Devices Israel
From: Udupi Harisharan <uharisha=user domain=cisco got calm>
Hi, John,
To partially answer Ori's question, I can give data about ECSM vs. the old
way of doing models. We have used ECSM mainly for delay characterization
for standard cells and special cells, e.g. custom built standard cells, for
various PVT corners in our design flow. Some specifics about ECSM:
- Accuracy: We continue to find that the ECSM models are within 2-3% of
SPICE, whereas NLDM is only within 7% of SPICE. These numbers are for
single drivers with long (>1mm) interconnect. In particular, we depend
on ECSM for parallel drivers, as NLDM is inaccurate there.
- File size: A TSMC 90 nm library is around 160 MB in ECSM versus 19 MB for
the .lib, or 8.4X the size of .lib. This is still a manageable size.
- Characterization speed: We have been able to characterize a 527 cell
130 nm library on 8 Linux CPU's within 2 days.
- Delay calculation speed: Using ECSM with SignalStorm, we were able to
delay calculate a 2 million instance (130 nm) design in an hour.
A year ago, we tried using the linear voltage deration in SignalStorm for
our 90 nm design, but it was not working very well at the time, and it
seemed that the flow was not yet mature. We haven't tried the Cadence
non-linear deration.
The .lib extension for ECSM extension is simple. Since it is an ASCII
format, it would be easy to debug compared to the IPDB.
We have been satisfied using ESCM -- the main difference we can vouch for is
its accuracy compared to the other modeling mechanism (NLDM) and the speed
of delay calculation when using SignalStorm.
- Udupi Harisharan
Cisco Systems San Jose, CA
---- ---- ---- ---- ---- ---- ----
From: Mehmet Cirit <mac=user domain=libtech got calm>
Hi, John,
We've implemented both ECSM and CCS in our LibChar characterization tool.
This is what we found.
- The run time impact on characterization is negligibly small. It
takes one flag to enable them, and two accuracy parameters each to
configure.
- It has a big impact on disk space. A 400 cell single corner Liberty
library with 7x7 tables for timing and power data is usually around
4 MB. It grows to be in the range of 100 MB with ECSM data and 300 MB
with CCS data. CCS takes approximately 3 times as much storage as
ECSM. To be fair though, this depends on the accuracy settings for
segmenting current and voltage waveforms, and heavier use of
exponential notation makes a significant contribution to the bigger
size of CCS libraries files. A more proper comparison should be done
by matching the accuracy of delay calculations and by working backwards
to arrive at the proper segmentation settings for each model, which
requires looping around characterization and delay calculation; I have
not done this.
A few general observations about ECSM and CCS models:
- CCS. One technical problem is that CCS does not have room for the
initial value of the output voltage. Without knowing what the
voltage is at the beginning of current waveform, one can not
integrate the current waveform to get back to the voltage waveforms.
I believe initial value of output voltage defaults to supply voltage
or zero. In that case, there could be as much as 10-15% error in
determining the threshold points for delay measurements, depending on
the overshoots and undershoots and starting point of the current
waveform. I don't know how this data is being used. Unless the
thresholds are set properly across cells and interconnect, signal
delays loose their additive property. If there is a need to create
the voltage waveforms from CCS tables, it can not be done accurately
without knowing the initial voltage value.
- ECSM. One technical problem is that ECSM scales the output voltage
to be between 0 and 1, ignoring the absolute voltage limits.
However, those limits, again, vary depending on the overshoots and
undershoots. We use the maximum voltage as the scaling variable, and
drop any negative entries, which I believe is the recommended
procedure. If you take the mid point of ECSM table, it may correspond
to 0.5v for slow inputs, 0.55v for somewhat fast inputs, and maybe
0.6v for very fast inputs for the sake of argument. Without knowing
the exact voltage swing, one can not determine the threshold points
for delay measurement correctly. Naturally, I don't know how this
data is being used. Unless thresholds are set properly across cells
and interconnect, irrespective of input rise/fall time, signal delays
loose their additive property.
- CCS/ECSM. If you are calculating the delay through an RC network,
and driver goes down to, let us say, -0.1v before it starts driving
its load, I think it is important to know that. I believe both models
ignore this phase of signal propagation. This may be more important
for smaller loads.
- CCS/ECSM. The receiver model is based on charge. In addition to
the resistive drive of the driver output stage, input gates are
coupled to a lot of other nodes. As a result, the current supplied to
the receiver by the driver could be quite non-monotonic, flowing in
either direction. For a fast driver, the charge capacitance of the
receiver could even be negative, depending on overshoots, undershoots
and the sampling interval. What can you do with negative caps? In
input cap/receiver modeling what is important is the delay the
receiver imposes on the driver, rather than the amount of charge it
may have received. CCS came up with two piece receiver model, ECSM
with a single model. We copy the first CCS model results to ECSM
receiver model. I have not seen any characterization guidelines from
Cadence on this issue. If you measure input cap over the whole
transition interval, using charge based methods, the effect of input
slope gets integrated out. In any case, the basic question is the
signal delay of the driver, rather than the charge capacity of the
receiver.
I am not really making any judgment here on CCS versus ECSM. In principle,
one can integrate the current waveforms to find the voltage waveforms.
Conversely, one can differentiate the voltage waveforms and calculate the
current waveforms.
The compactness of its models is the one practical advantage ECSM has over
CCS. CCS takes approximately 3X more storage compared to ECSM.
- Mehmet Cirit
Lib Tech, Inc. Saratoga, CA
Index
Next->Item
|
|