Home > Community > Forums > Digital Implementation > why script error ?

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 why script error ? 

Last post Fri, Jun 22 2007 2:49 AM by archive. 1 replies.
Started by archive 22 Jun 2007 02:49 AM. Topic has 1 replies and 1009 views
Page 1 of 1 (2 items)
Sort Posts:
  • Fri, Jun 22 2007 2:49 AM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,930
    why script error ? Reply

    set instcnt 0                                                                  
    set cellcnt 0                                                                  
    set f [open total w]                                                            
    dbForEachHeadCell [dbgHead] cellPtr {                                          
            set cellName [dbCellName $cellPtr]                                      
            dbForEachCellInst $cellPtr instPtr {                                    
                    set instName [dbInstName $instPtr]                              
                    puts stdout "inst name: $instName"                              
                    puts $f "inst name: $instName"                                 
                    incr instcnt                                                   
            }                                                                       
            incr cellcnt                                                            
    }                                                                              
    puts stdout "cell num:  $cellcnt"                                               
    puts stdout "inst num:  $instcnt"

    when I ran this script , error occured as shown :
    **DIAG[rdaTclDbCmd.c:2977:dbiForEachCellInstCmd]: Assert "!dbmIsInstVInst(dbmCellInstList((dbsCell *)p))"
    Wrong pointer type: "dbcObjVInst" (should be "dbcObjInst") in "dbInstName"
    Usage: dbInstName Bad return code in "dbForEachCellInst"Bad return code in "dbForEachHeadCell"

    anyone can help me ?


    Originally posted in cdnusers.org by Dota
    • Post Points: 0
  • Tue, Jun 26 2007 11:18 AM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,930
    RE: why script error ? Reply

    Hi Dota,

    I think the script is erroring out when you're trying to loop through each instance associated with a master cell here:

    dbForEachCellInst $cellPtr instPtr {

    dbForEachCellInst is intended to be used to loop through a "head" cell rather than a leaf cell. Here's a re-written version that I think does what you're looking for:

    set instcnt 0
    set cellcnt 0
    set f [open total w]
    dbForEachHeadCell [dbgHead] cellPtr {
    incr cellcnt
    set cellName [dbCellName $cellPtr]
    puts "[dbCellName $cell]"
    puts $f "cell name: $cellName"
    }
    dbForEachCellInst [dbHeadTopCell] instPtr {
    set instName [dbInstName $instPtr]
    puts "inst name: $instName"
    puts $f "inst name: $instName"
    incr instcnt
    }
    puts "cell num: $cellcnt"
    puts "inst num: $instcnt"

    Let me know if this does what you're looking for, and if not let me know a little more about what you're trying to accomplish.

    Thanks!
    Bob


    Originally posted in cdnusers.org by BobD
    • Post Points: 0
Page 1 of 1 (2 items)
Sort Posts:
Started by archive at 22 Jun 2007 02:49 AM. Topic has 1 replies.