( ESNUG 261 Item 2 ) -------------------------------------------- [5/22/97]

From: Larry Fiedler <fiedler@NVidia.COM>
Subject: One User's Initial Impressions On PrimeTime

Dear John,

I know that Synopsys is announcing PrimeTime soon.  I was fortunate to be a
beta site for the tool. Here is a letter in case anyone is asking "what is
this thing"?

PrimeTime is a static timing analyzer from Synopsys.  It can read the
Synopsys database as is and it is faster and smaller.  Instead of dc_shell,
Primetime uses pt_shell.  On our design, dc_shell takes 640MB and 2850
seconds whereas pt_shell takes 325MB and 1123 seconds for the same task.
It also has some better MCP controls.  (We use Synopsys for timing
verification.)  PrimeTime is a very good fit for us as it can use the
Synopsys database as is.

The design is the RIVA128, a 3D multimedia accelerator for AGP and PCI
based computers.  It is in a 0.35um process and has 3.5M transistors
or 216k instances.  As could be expected with a design this large,
there are several timing issues.  There are 3 major and 1 minor clock
domains, The major clock domains, such as pci_clk, and pixel_clock each
have versions of themselves that are skewed and maybe half frequency.
In addition there is clock gating, asynchronous and synchronous internal
rams and a CAM with half clock timing.

Our design methodology is that designers supply a netlist and a false
path file. The false path files use variables like "context_cell",
"context" and rely on "current_instance"; they look something like:

  set_false_path -from  Fanout_fbi_g_busy -to context + "dp/lvl0/ctag/*"
  set_false_path -from  Fanout_fbi_g_busy -to context + "dp/lvl0/aintp/*"

An explanation of all this is perhaps worthy of another letter.  (The idea
is to capture the false path information once.)

In addition to being faster and smaller, pt_shell caught a few half cycle
paths better than dc_shell. It also has a better clock gating detect and
reporting mechanism. The tool itself can handle better MCP's like "-through"
although we did not use this.  It also has a faster characterize capability.

pt_shell is different than dc_shell in that it uses TCL, a better
language to be sure, but nonetheless different.  There is a translator
that works well.  But in the end, I took the route of building a 
database with the false paths and timing constraints from dc_shell and
merely reading in the database with pt_shell.  The db had to be created
for flattening and SDF purposes and this kept the same-but-different
files from proliferating.

  - Larry Fiedler
    NVidia



 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)