Editor's Note: Well, my short term contract has ended and I'm heading
  home today back to Boston.  Being in the South has left me with some
  odd impressions.  Yes, this *is* the Bible Belt as the sociologists
  say.  And there are *plenty* of churches here.  Lots of them.  Beaucoup
  churches everywhere.  Most of them also have very bright lit signs.
  I've even seen car dealerships with the message "JESUS SAVES" on their
  marquees!?  (Whoa!  You *never* see businesses mixing in religion in the
  rest of the U.S.!)  ... But I've also never seen so many strip bars and
  topless clubs in one region of the country either!  (Whoa again!)
  
  The "South" is just one big study in contrasts, Yes, Sir, contrasts.
  
  One thing I do know though.  I just called my friends in Boston and I've
  heard tales of woe concerning freezing weather, so much ice it has
  cause power outages, and brutal cold.  Yet down here it was 70 degrees
  today...  I'VE JUST GOTTA GET ME ANOTHER ONE OF THEM CONTRACT JOBS
  AFTER CHRISTMAS IN FLORIDA, TEXAS, ARIZONA -- ANY PLACE THAT'S WARM!!!
  
                                           - John Cooley
                                             the ESNUG guy

( ESNUG 257 Item 1 ) -------------------------------------------- [12/96]

From: Byron.Sonner@eagle.ColumbiaSC.NCR.COM (Byron Sonner)
Subject: I Always Use Freshly Squeezed DesignWare Parts For Speed

Dear John,

I just want to share with the ESNUG readers a little script I use to "crunch
down" the DesignWare libraries within Synopsys.  We're always interested
in speed first and then area for our compiles.  This helps us get there:

    foreach(design_name,find(design,{*DW*})) {
       current_design design_name
       create_clock -period 20 -waveform {0, 10} -name clk
       set_clock_skew -ideal -delay 0.0 clk
       set_input_delay 19 -clock clk all_inputs()
       set_output_delay 1 -clock clk all_outputs()
       compile -map_effort high
    }

    current_design top
    set_dont_touch {*DW*}

Experiments on my own designs have shown this improves the speed of designs
with the area not growing significantly.

  - Byron Sonner
    NCR, Columbia, SC


( ESNUG 257 Item 2 ) -------------------------------------------- [12/96]

Subject: ( ESNUG 255 #4 256 #1)  Internal Tri-State Vs. MUXes Rules Of Thumb

>   I thought you might like the approach I am using on my current ASIC
> design.  I have an internal bus in the ASIC that has to read
> approximately 100 registers.  I mux the registers internal to each 
> of my approximately 5k gate partitions that get synthesized by 
> Synopsys.  When I mux inside the partition, I have a "case" statement
> with the default/others choice with the output all zeros if none 
> of the registers are selected.  I then daisy chain "OR" the partition 
> outputs from one partition to the next.  This approach minimizes the 
> routing between partitions and so does not require lots of routing 
> like the external mux approach would require.  This approach only 
> requires a 1x driver to drive the next partition since there is only a 
> single load when you "OR" which is much better than tri-stating.


From: dchapman@goldmountain.com (Dave Chapman)

Wow, John.

It simply never occurred to me to do it that way.  Perhaps the 100 gate-delay
propagation time has something to do with this.  For low-performance
applications, it might be the way to go.

Meanwhile, several people pointed to the problem of finite fan-out from a
tri-state driver.  Right.  You will have to partition the design, with sub-
buses and so on, until it looks something like a PC, with a CPU bus, an ISA
bus, a PCI bus, and whatever the flavor of the month is bus.  That's life.

My conclusion is that we still do not have a single best solution to the
problem of designing a bus, and that these things will continue to require
trade-offs and plain old design skill.

  - Dave Chapman
    Goldmountain

       ----    ----    ----    ----    ----    ----    ----

From: tbrown@armltd.co.uk (Tudor Brown)

John,

In my experience of designing complex systems, tristate buses are hard to
avoid when going for area and power efficiency (though system architecture
issues of a chip can determine area & power more than any methodology such as
tristate buses, etc.)

We naturally use tristate buses as the default approach, and I think it is
fair to say that we have had some actual problems and also some near misses
in terms of tools support spotting contention or power-up faults, but the
savings made in my opinion justify the perserverence.

My answer to the "which is better" debate would be "it depends if your
tools can support the methodology".  If your tools expect to cope with the
charge-sharing, contention and undriven aspects of tristate buses, then
bidi's are usually smaller and cheaper.  But if your tools expect logical
connections only, then it is best not to push the bidi philosophy, because
sooner or later you will come unstuck when the tools miss a logical driver
error -- resulting in contention, or float.

Personally, I feel it is a bit of a cop-out on the part of many tool flows
not to treat the issues of bidirectional buses and mulitle drivers correctly,
but unless you really go it on your own and use transistor level simulation
(which most of the world cannot afford to do) then most designers are limited
by the capabilities of the tools they use. So sadly, unidirectional buses are
here to stay as well.

Our ARM7TDMI core, designed for embeddability recognises this fact and
actually has 96 data pins! There is a bidirectional bus and also 2
unidirectional buses. Then it is up to the user to determine the philosphy
he wants to invoke in using the core.

  - Tudor Brown, Chief Technical Officer
    ARM, Ltd.
    
       ----    ----    ----    ----    ----    ----    ----

> One very serious problem with tri-states that wasn't addressed is the
> possibility of creating a tri-state net which can't be driven by the
> largest tri-state driver in the cell library, (i.e. the net capacitance
> is larger than the max_cap attribute of the tri-state driver.)


From: sgolson@trilobyte.com (Steve Golson)

A subtle point, John: if you have a big tri-state bus, you may get faster
performance by using a *smaller* drive tri-state buffer.  If you use the
largest buffer in your library, then all the drivers on the bus will
see a much larger load on the bus (due to the pin capacitance of the
other big drivers).  Your library probably has a "sweet spot" --
experiment and try out all possible buffers for the size bus you have,
in order to find the fastest cell.

Do not let Design Compiler blindly pick the tri-state driver!  For any
given small module, DC sees a giant load on the bus, and picks the
largest drive buffer.  If all the modules do this, you get sub-optimal
performance.  Use "set_dont_use" on all other tri-state library cells,
so DC is forced to use the particular tri-state buffer you want.

  - Steve Golson
    Trilobyte Systems
    
       ----    ----    ----    ----    ----    ----    ----
    
From: jcooley@world.std.com (John Cooley)

The big "gotcha" I've seen from internal tri-state buses is that the tools
downstream from synthesis sometimes have had problems.  For example, some
ATPG tools have historically just "choked" when encountering them.
(Apparently internal tri-state buses don't test nicely.)

   - John Cooley
     the ESNUG guy


( ESNUG 257 Item 3 ) -------------------------------------------- [12/96]

Subject: ( ESNUG 254 #6 ) Great DC 3.5 "-scan", But Its Licencing Sucks!

> Some of your ESNUG readers might be as happy as I was to learn about
> the "-scan" option to the "compile" in rev. 3.5 of Design Compiler.
> This is a relatively 'painless' way to map scan test devices into a
> design.  ... Now the 'gotcha'.  The "-scan" option checks out a Test
> Compiler license.  In the version 3.4 compile scenario the Test Compiler
> license was only needed during the 5 minute "insert_scan" operation.
> In 3.5, the Test-Compiler license is 'held' for the entire duration of
> the rather long "compile"!  ... Thus, I must shell out additional $$$ to
> buy enough Test-Compiler licenses to equal my Design Compiler licenses or
> I cannot use the "-scan" option.  ... My opinion is that the "-scan"
> option should not need a Test Compiler license.
>
>   - Charles F. Shelor
>     Efficient Networks, Inc


From: [ The Synopsys TC Tech Marketing Manager ]
  
Hi John,

We released 1-pass scan synthesis in v3.5a, which as Charles noted,
includes the ability for Design Compiler to directly synthesize
to an optimized, mapped implementation using scannable sequential
elements.  I (and the R&D people here!) respectfully disagree that
the "'-scan' option only affects library element selection".

While 1-pass does not require any explicit invocation of Test Compiler,
"compile -scan" does invoke TC under the hood to perform a variety
of actions, including the following:

  -  Synthesize and optimize scan logic, including techniques
     only relevant to test logic.
     
  -  Annotate scan routing delay model elements into the
     design, and control test mode signals to inactive states.
     These steps ensure that gate-level simulation will
     accurately reflect both the timing impact from scan routing
     (the scan chains are not actually routed during 1-pass), and
     mission-mode behavior.
     
  -  Manage the design database during possible multiple optimization
     iterations through Design Compiler to maintain the required
     scan logic and mapping.

Test Compiler does need to be explicitly invoked to run
test DRC checks, route scan chains, and run ATPG.  (Scan chain
routing is NOT performed by compile -scan for two reasons:

  - We did not want to overconstrain synthesis in its exploration of
    the optimization search space
    
  - Scan chain stitching tends to be chip-level task, with likely
    input from manufacturing requirements or from physical design).

It is true that 1-pass scan synthesis does use the Test Compiler license
longer than the five minutes he was seeing in his old flow, but 1-pass is
a new, high-value feature in v3.5a that all current TC customers received
*in addition to* existing capabilities.  We haven't taken anything away,
Charles "...must shell out additional $$$ to buy enough Test-Compiler
licenses to equal my Design Compiler licenses..." only if he sees that
1-pass and the new design flows it enables are valuable in their own right.

The 1 TC license per DC license is a new user model, compared to earlier
releases, and we've made some product configuration changes to help make
the adopting 1-pass easy:

  1.  Starting in January, there will be a new Design Compiler
      configuration called DC Expert Plus, which is DC Expert
      and all of the module-level DFT capabilities in Test Compiler
      (including 1-pass scan synthesis, hierarchical scan DFT,
      test DRC, statistical fault coverage reporting).
      
  2.  The current TC DFT package will go away, and will be replaced
      by a DC Expert to DC Expert Plus upgrade.
      
  3.  We recognize that designers will need much more access to
      DFT licenses, and we are pricing the the DC Expert Plus
      configuration, and the DC Expert to DC Expert Plus upgrade
      to better enable this user model.

Finally, during a promotional period in December, DC Expert Plus and DC
Expert to DC Expert Plus upgrades will be priced very attractively.

  - [ The Synopsys TC Tech Marketing Manager ]
  
[ Editor's Note: We have "DC Expert", we have "DC Professional", and *now*
  you've added a "DC Expert Plus" ?!  Oh, great.  I wonder which Marketing
  wunderkind got the bonus for thinking *this one* up???  :^)  - John  ]


( ESNUG 257 Item 4 ) -------------------------------------------- [12/96]

From: [ The Chicken Man ]
Subject: User's Benchmark Of Model Tech V4.5c vs. Synopsys VSS 3.4b & 3.3b

Hi John,

Here's some benchmark data that may interest you. The first shows the
differences in run speed for 2 versions of Synopsys VSS vs. Model Tech
that were done on a Sun Ultra-1, equipped as described below.

The second shows the differences between a Sun Ultra-1 (1 CPU) with 448M
vs. a Sun Ultra-2 (2 CPUs) with 1 Gig of memory.

The sets of data are actually runs of the same simulation for all of the
cases.  The 1st runs were on the same Sun Ultra-1 as the data taken for the
Ultra-1 vs. Ultra-2 test cases.

Rather than incur the wrath of the EDA vendor gods, and be doomed to be
awash in a sea of "X"s for the rest of my simulating life, please delete
my name.  Best wishes,

   -- [ The Chicken Man ]
   

Benchmark Data for Synopsys VSS 3.3b, 3.4b, and ModelTech V4.5c.
****************************************************************

The benchmark was a single testbench on a board level design containing:

   - 4 copies of a 415K gate ASIC (36,000 lines of RTL),
   - 1 copy of an 70K gate ASIC (4500 lines of RTL) and 
   - 16 models of a 64K by 18 SSRAM."

The ASICs perform a complex switching function.


Each simulation logged about 200 signals into a waveform data file for
later viewing, and each simulation wrote 43,000 lines of textio output to
the transcript file ( used for movie viewing ). 

Simulations were compiled and run on the same Ultra1.  No swapping.

Speed of simulation
-------------------
   which             	TB_ICP_BTA sim	    Relative sim times
---------------------	--------------	    ------------------
VSS V3.3B Interpreted	240 minutes  		100%
VSS V3.3B   Compiled	 94 			 40%
VSS V3.4B Interpreted	191		 	 80%
VSS V3.4B   Compiled	 48		 	 20%
Model tech V4.5c 	 47		 	 20%


Speed of compilation
--------------------
I did not accurately measure this, but its pretty dramatic between Synopsys
compiled and interpreted.

VSS V3.xB Interpreted	FAST
VSS V3.xB   Compiled	5-10 X slower
Model tech V4.5c 	FAST


Kernel Size
----------
VSS V3.3B Interpreted	100 MB
VSS V3.3B   Compiled	 ---
VSS V3.4B Interpreted	 92 MB
VSS V3.4B   Compiled	 85 MB
Model tech V4.5c 	 18 MB  ( !!! I swear )


Library Size
------------
VSS V3.xB Interpreted	15 MB
VSS V3.xB   Compiled	18 MB
Model tech V4.5c 	10 MB


Usability: 
------------
The Model Tech waveform tool is less capable than Synopsys's, but the host
of other methods of viewing your data more than makes up for it.  Model
Tech waveform is much faster at viewing lots of data (full view).

ModelTech crashed once in the waveform tool.  Synopsys never crashed.


Executuve Summary
-----------------
Synopsys (compiled) and ModelTech are neck and neck in sim speed for this
one design.   Otherwise, MTI has much smaller simulator images, compiles
faster,  provides more information, is easier to use, you don't have to
worry about compiled vs interpreted.

Synopsys is more forgiving of VHDL semantic content, has a fuller featured
wave viewer, and might be more robust on the bigger circuits.



Benchmark Data for Synopsys VSS 3.4b SUN Ultra-1 Vs. An Ultra-2
***************************************************************

No other significant jobs were running on either machine.

The simulation library was NOT local to either machine.

Kernel size for the VSS3.4b compiled code simulation:  85 MB


                       Ultra-1    Ultra-2     diff
                      --------   --------     -----
wall clock time:      51.7 min   34.5 min      67%
       cpu time:      2900 sec   2018 sec      70%


Note:   This same simulation was taking us about 4 hours for similar
        test simulations in the spring, using VSS V3.3b interpreted
        code running on Ultra-1's.

for the Ultra-1
---------------

                CPU: SUNW,UltraSPARC
    FRAME BUFFER(S): cgsix, cgsix
      SunOS RELEASE: 5.5
             MEMORY: 448MB
               SWAP: 3584.6MB total, 148.7MB used, 3435.8MB available
       LOAD AVERAGE: 1.26, 1.14, 0.79


for the Ultra-2
---------------

                CPU: SUNW,UltraSPARC
                CPU: SUNW,UltraSPARC
                CPU: SUNW,ffb
    FRAME BUFFER(S): cgthree
      SunOS RELEASE: 5.5.1
             MEMORY: 1024MB
               SWAP: 2453.0MB total, 28.7MB used, 2424.3MB available
       LOAD AVERAGE: 0.20, 0.10, 0.06


Executuve Summary
-----------------

The Ultra-2 ran the single simulation 50% faster ( simulation time is 67%
of the Ultra-1's ).  There is no swapping on either machine, and the
Ultra-2 appears to only use one cpu for the single simulation.


( ESNUG 257 Item 5 ) -------------------------------------------- [12/96]

From: Charles Thomas <charlest@jna.com.au>
Subject: Mentor AL2 Vs. Synopsys W/ Floorplanning Mgr. In The "Down Under"

G'day John,

I have read with much interest many of your various articles and news
items regarding ASIC design and synthesis.

I am starting the design of my company's first ASIC which is a 35K gate
device with an additional 64kbits of RAM which will be manufactured by
LSI Logic using thir LCB6000K process.

I am now having to make a decision regarding the most appropriate
synthesis tool for my company to purchase.  It basicaly boils down to
either Mentor Autologic II or Synopsys Design Compiler Expert which have
the following advantages/disadvantages:

Mentor    advantages : cheap, locally supported, Exemplar Galileo will
                       be thrown in
       disadvantages : small market share, unknown future
                       particularly regarding enhanced features.  Less
                       likely to be supported by ASIC vendors

Synopsys  advantages : large market share, plausible long term
                       development strategy, recommended by LSI  
                       Logic for their design flow.
       disadvantages : expensive, support out of Singapore - not local

We want a tool that will last, but cost and support are also an issue.  
As we have little previous experience in this area, this decision is not
an easy one for us to make.

Things are a little bit unclear regarding the interaction betwen
floorplanning/layout and synthesis.  Both Mentor and Synopsys are telling
me that I don't really need to be worrying about the ability to
backannotate RC path delay info from floorplanning/layout back into the
synthesiser to re-optimise the circuit prior to routing.  Mentor claim
that AL2 supports this for LSI Logic should I want to do it (do I
believe them?) and Synopsys say I can do it with their Floorplanning
Manager tool (for an extra US$60K (list)).

I would have thought that this sort of feature would have been required
by anyone doing an ASIC design using a 0.5um or less technology but due to
my lack of experience in this area I am not sure if I am correct.

I realise that you must get many questions from people all the time, but I
would very much appreciate it if you could spare the time to answer the
following few questions.

 - Do Synopsys users in general use Floorplanning Manager?
 - Is Floorplanning Manager required to backannotate floorplanning/layout
   RC data?
 - Is Autologic 2 likely to support this functionality at no extra cost?
 - Any other comments you would care to make regarding the choice of a
   synthesis tool?

Thank you for bearing with me.

  - Charles Thomas
    JNA Telecommunications Limited, Chatswood, AUSTRALIA                             v     


( ESNUG 257 Item 6 ) -------------------------------------------- [12/96]

From: mcur@alcatraz.rtc.sc.ti.com (Mark A. Curry)
Subject: "Bad DC! Bad DC!" -- How Can You Get DC To Clean Up After Itself?

John,

I use parameterized templates extensively in my Verilog designs.  When
Synopsys reads in these templates, it creates a few temporary files with
names like "*.mra", and "*verilog.syn".  Problem is, messy Synopsys doesn't
clean up these files upon exit.  My directories are really starting to get
cluttered!

Do any of your readers have any tricks to get Synopsys to not create these
files, or redirect them to a junk directory?  Something like a cache_read,
or cache_write dc_shell variable would be OK.  But, I can't seem to find
any variables like this in the online docs.

  - Mark Curry           
    Texas Instruments ASIC Design Center - San Jose, CA


( ESNUG 257 Networking Section ) -------------------------------- [12/96]

Bristol, UK -- Hewlett-Packard seeks ASIC/FPGA dsgnrs w/ Verilog/Synopsys,
know LANs and >50 Mhz design.  No Agencies.  "gcaw@hplb.hpl.hp.com"


 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)