( ESNUG 321 Item 5 ) ---------------------------------------------- [6/8/99]

Subject: ( ESNUG 317 #4 )  Tricking DC Into Buffering Every Output Port

> I would like to force design compiler to put a buffer on all output
> ports, and to not use the buffered output internal to the module.  The
> obvious way to do this would be to do a
>
>          set_max_fanout 1 all_outputs()
>
> but of course set_max_fanout can only be used on input ports (why???).
> I can usually get what I want with the right combination of loads and
> output delays on the output port, but there are cases where this
> doesn't always work.  Ideas?
>
>     - Will Leavitt
>       Giganet, Inc.


From: Robert Wiegand <rwiegand@mailsrv.ensoniq.com>

John,

This has worked for me in the past:  Start out by setting a max_fanout
on the design,

      set_max_fanout max_fanout_number current_design
        /* let max_fanout_number = 20 for example */

Then, set a fanout number on the output port equal to the max fanout of
the design:

      set_load max_fanout_number -fanout_number output_port(s)
or
      set_fanout_load max_fanout_number output_port(s)

It is now a design rule violation to hang any additional internal loads
on the net driving the output.

    - Bob Wiegand
      Ensoniq, Corp.                                 Malvern, PA



 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)