( ESNUG 368 Item 2 ) --------------------------------------------- [04/12/01]
 
Subject: ( ESNUG 367 #1 )  Fixes To The PhysOpt/Avanti PDEF 3.0/2.0 Scripts
 
> Here are some Scheme scripts that enable data to move between Avanti and
> PhysOpt.  I think they will work for Chip Architect and Flexroute as well.
> These scripts seem to work for my company, but I would guess that other
> folks may have to modify them to make them work at their site.
>
>     - ASIC Designer #8
 
 
From: "Andy Pagones" <Andy_Pagones-ACIC22@email.mot.com>
 
John,
 
I'd like to make some corrections to the script help file you posted on
the Downloads section of DeepChip.  It is missing some double quotes and
carriage returns.
 
Instead of:
 
   load dumpPLIB.scm define plibSiteName "tsm3site" dumpPLIB
         /home/tsmc18/avanti/tsmc18 tsmc18.plib
 
it should be:
 
   load "dumpPLIB.scm" ; {to load the Scheme code}
   ; {now define runtime options}
   dumpPLIB "/home/tsmc18/avanti/tsmc18 tsmc18.plib"  ; {to execute the
   function}
 
and rather than specify any number of "define" commands, direct the users to
the subsequent text that shows the runtime options embedded within the
Scheme code.  This script header contains 6 options:
 
   (define plibDumpMode 2) ; 0 - technology; 1 - cell; 2 - technology + cell
   (define plibBusNameRule "[%d]")
   (define plibSiteName "core")
   (define nameCaseSensitivity "ON")
   (define maxFatWireWidth 2500)
   (define debugFlag #f)
 
Any of these may (and some MUST) be modified by the user AFTER loading the
Scheme code.  But the syntax should be corrected on your web page:
 
   define plibDumpMode 1
   define plibDumpBusNameRule "[%d]"
   ; ... etc....
   ; {and only THEN run the function:}
   dumpPLIB "physLibName" "plibOutputFile"
 
Likewise replace:
 
   load dumpPDEF3.scm dumpPDEF3 "tsm3site" output_pdef_file.pdef
 
with:
 
   load "dumpPDEF3.scm"  ; {load the Scheme code}
   (define vendor "SYNOPSYS") ; {define up to 7 runtime options below}
   (define program "PHYSICAL SYNTHESIS")
   (define version "")
   (define preRouteFormat 2) ; 0 - place obs, 1 - routing obs, 2 - pnet
   ; AJP set designLevel=0 for initial fp (PC deletes cell placement anyway)
   (define designLevel 0) ; 0 - floorplan, 1 - floorplan + placement
                          ; 2 - floorplan + placement + complete routing
   (define debugFlag #f)
   (define pdefBusNameRule "[%d]")
 
   dumpPDEF3 "siteName" "output_pdef_file.pdef" ; {execute the function
 
The first Known Issue for this script is a non-issue; simply don't output
routing: define designLevel 0 or define designLevel 1 will do the trick.
 
Instead of:
 
   load readPDEF3.scm.scm readPDEF3.scm  input_pdef_file.pdef
 
use:
 
   load "readPDEF3.scm"
   readPDEF3 "input_pdef_file.pdef"
 
there are no runtime options for readPDEF3.scm .
 
Once we did all this, we found the scripts worked slicker than slick in
getting PhysOpt PDEF 3.0 in and out of Avanti PDEF 2.0.  Slick!
 
    - Andy Pagones
      Motorola Labs
 
 
 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)