( 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







   
 Sign up for the DeepChip newsletter.
Email
 Read what EDA tool users really think.


Feedback About Wiretaps ESNUGs SIGN UP! Downloads Trip Reports Advertise

"Relax. This is a discussion. Anything said here is just one engineer's opinion. Email in your dissenting letter and it'll be published, too."
This Web Site Is Modified Every 2-3 Days
Copyright 1991-2024 John Cooley.  All Rights Reserved.
| Contact John Cooley | Webmaster | Legal | Feedback Form |

   !!!     "It's not a BUG,
  /o o\  /  it's a FEATURE!"
 (  >  )
  \ - / 
  _] [_     (jcooley 1991)