+ Post New Thread
Results 1 to 14 of 14
  1. #1
    Newbie level 4
    Points: 55, Level: 1

    Join Date
    Jun 2019
    Posts
    7
    Helped
    0 / 0
    Points
    55
    Level
    1

    "calibre view generation encountered a fatal error" but spectre PEX extraction works

    Hello,

    I am using cadence (version 16) and calibre.

    I have a DRC and LVS clean layout and was able to extract a spectre PEX netlist and simulate it from the command line. However, it seems much easier to use the calibreview file to run the PEX outputs in spectre. Almost all of the tutorials I find online do it this way.

    However, when I run the calibreview extraction I get the following in the output log file:

    Code:
    Summary of Options :
    library                                 chip
    strmFile                               ./calibre/AND6.calibre.db
    topCell                                 AND6
    view                                    layout
    runDir                                 ./calibre/
    logFile                                 PIPO.LOG.AND6
    summaryFile                             PIPO.SUM.AND6
    case                                    Preserve
    convertDot                              node
    
    INFO (XSTRM-223): 1. Translating cellView TECH_XI10/POLY1CON/layout as STRUCTURE POLY1CON_CDNS_560263268430
    INFO (XSTRM-223): 2. Translating cellView TECH_XI10/VIA_C/layout as STRUCTURE VIA_C_CDNS_560263268431
    INFO (XSTRM-223): 3. Translating cellView PRIMLIB/nbta4/layout as STRUCTURE nbta4_CDNS_560263268430
    INFO (XSTRM-223): 4. Translating cellView PRIMLIB/pbta4/layout as STRUCTURE pbta4_CDNS_560263268431
    INFO (XSTRM-223): 5. Translating cellView PRIMLIB/pbta4/layout as STRUCTURE pbta4_CDNS_560263268432
    INFO (XSTRM-223): 6. Translating cellView PRIMLIB/nbta4/layout as STRUCTURE nbta4_CDNS_560263268433
    INFO (XSTRM-223): 7. Translating cellView chip/AND6/layout as STRUCTURE AND6
    INFO (XSTRM-180): You have not used the objectMap option. The design has instance(s) of at least one of following OpenAccess objects: oaBlockage, oaBoundary, oaRow, and oaMarker. Any information about these objects will not be translated into the generated stream file. Use the objectMap option to translate/preserve these objects using XStream. For details on the objectMap option, refer to the "Design Data Translator's Reference" guide for XStream.
    
    Summary of Objects Translated:
    	Scalar Instances:                       14
    	Array Instances:                        0
    	Polygons:                               4
    	Paths:                                  0
    	Rectangles:                             397
    	Lines:                                  0
    	Arcs:                                   0
    	Donuts:                                 0
    	Dots:                                   0
    	Ellipses:                               0
    	Boundaries:                             0
    	Area Blockages:                         0
    	Layer Blockages:                        0
    	Area Halos:                             0
    	Markers:                                0
    	Rows:                                   0
    	Standard Vias                           32
    	Custom Vias:                            0
    	CdsGen Vias:                            0
    	Pathsegs:                               117
    	Text:                                   0
    	TextDisplay:                            9
    	Cells:                                  7
    
    Elapsed Time: 0.1s   User Time: 0.1s   CPU Tim
    e: 0.0s   Peak VM: 3080KB
    
    INFO (XSTRM-234): Translation completed. '0' error(s) and '1' warning(s) found.
    
    
    log port port:"./calview.log"
    //
    //  CalibreView Settings:
    //	  Netlist File: ./calibre/AND6.pex.netlist
    //	  Output Library: chip
    //	  Schematic Library: chip
    //	  Cellmap File: /opt/xfab/XKIT/xi10/mentor/v2_0/PEX_calibre/v2_0_2/calview.cellmap
    //	  Log File: ./calview.log
    //	  Calibre View Name: calibre
    //	  Calibre View Type: maskLayout
    //	  Magnify Devices by: 1.000000
    //	  Magnify Parasitics by: 1.000000
    //	  Create Terminals: if matching terminal exists on symbol
    //	  Reset Properties: ("m=1")
    //	  Generate SPECTRE Netlist: off
    //
    ****************************
    Running Back Annotation Flow
    ****************************
    Calibre View generation encountered a fatal Error.
    Please consult the logfile for messages.
    
    *Error* close: argument #1 should be an I/O port (type template = "p") - nil
    All that the log file has is "*Error* close: argument #1 should be an I/O port (type template = "p") - nil"

    Here is a screenshot of my setup:
    Click image for larger version. 

Name:	calview_setup.PNG 
Views:	14 
Size:	93.1 KB 
ID:	153624

    Do you know what this error means or how I can fix it? Let me know if you need more info. Thank you so much!
    Last edited by ads-ee; 11th June 2019 at 16:10. Reason: added code tags

    •   AltAdvertisement

        
       

  2. #2
    Full Member level 1
    Points: 1,331, Level: 8

    Join Date
    Mar 2015
    Location
    USA
    Posts
    106
    Helped
    20 / 20
    Points
    1,331
    Level
    8

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    Have you tried re-running PEX after the first failed attempt? Particular versions of this tool seem to have a bug where you have to run it twice, the second time usually passes. This error reminds me of that bug I saw a while ago.



  3. #3
    Newbie level 4
    Points: 55, Level: 1

    Join Date
    Jun 2019
    Posts
    7
    Helped
    0 / 0
    Points
    55
    Level
    1

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    Thank you for the reply! I have tried running it dozens of times, changing things to try to get it to work...no luck. Do you use calibre view as the export format? I'm still trying to figure out what is the quickest way to do PEX in a modular way and don't even know if calibre view is the best idea, but I'm not sure how to use spectre to simulate the other views without a lot of work each time changing things within files.



  4. #4
    Full Member level 1
    Points: 1,331, Level: 8

    Join Date
    Mar 2015
    Location
    USA
    Posts
    106
    Helped
    20 / 20
    Points
    1,331
    Level
    8

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    Can you provide some screenshots or details of your runset for PEX? That would make it a lot easier to debug. Also, can you list the step by step procedure of the PEX run you’re doing?



  5. #5
    Newbie level 4
    Points: 55, Level: 1

    Join Date
    Jun 2019
    Posts
    7
    Helped
    0 / 0
    Points
    55
    Level
    1

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    Quote Originally Posted by ljp2706 View Post
    Can you provide some screenshots or details of your runset for PEX? That would make it a lot easier to debug. Also, can you list the step by step procedure of the PEX run you’re doing?
    Sure, thank you! I am following a tutorial like this Cadence_Tutorial_Lab_2_F16 (15).pdf

    1. In calibre PEX window in rules tab select the PEX rules file from my foundry (I've looked at it and it seems to look like a pex rules file)
    2. In inputs, I have the layout file selected automatically and I have export from layout viewer selected. The layout file is ".db" and the format is GDSII
    3. Under Netlist tab in inputs I have the schematic file generated that I used also for LVS. I do not have export from schematic viewer clicked, but I have not changed the schematic and I do not get an LVS error.
    4. In outputs tab I have calibreview selected as the format, use names from schematic and the output is the name of my cellview followed by ".pex.netlist" I've changed this a few times and it does not have an effect on the error.
    5. In PEX options I label my ground node name with my ground net name in the Netlist>>format tab
    6. I then click Run PEX
    7. The PEX report file and a netlist file pop up and look like so:
    Click image for larger version. 

Name:	pex_errcalibre.PNG 
Views:	5 
Size:	260.5 KB 
ID:	153713
    8. the calibreview window also pops up and I select the netlist that was just output from PEX, and the cellmap from my foundry. Here is the image:
    Click image for larger version. 

Name:	calibreview_setup.PNG 
Views:	8 
Size:	131.3 KB 
ID:	153712

    When I click ok I get the error on the last line of this output. Here is the whole output:

    Code:
    Summary of Options :
    library                                 chip
    strmFile                                /home/viventi_lab_admin/gs_test/xi10/./calibre/AND6_ver2.calibre.db
    topCell                                 AND6_ver2
    view                                    layout
    runDir                                  /home/viventi_lab_admin/gs_test/xi10/./calibre/
    logFile                                 PIPO.LOG.AND6_ver2
    summaryFile                             PIPO.SUM.AND6_ver2
    case                                    Preserve
    convertDot                              node
    
    INFO (XSTRM-223): 1. Translating cellView TECH_XI10/POLY1CON/layout as STRUCTURE POLY1CON_CDNS_560518861040
    INFO (XSTRM-223): 2. Translating cellView TECH_XI10/VIA_C/layout as STRUCTURE VIA_C_CDNS_560518861041
    INFO (XSTRM-223): 3. Translating cellView PRIMLIB/nbta4/layout as STRUCTURE nbta4_CDNS_560518861040
    INFO (XSTRM-223): 4. Translating cellView PRIMLIB/pbta4/layout as STRUCTURE pbta4_CDNS_560518861041
    INFO (XSTRM-223): 5. Translating cellView PRIMLIB/pbta4/layout as STRUCTURE pbta4_CDNS_560518861042
    INFO (XSTRM-223): 6. Translating cellView PRIMLIB/nbta4/layout as STRUCTURE nbta4_CDNS_560518861043
    INFO (XSTRM-223): 7. Translating cellView chip/AND6_ver2/layout as STRUCTURE AND6_ver2
    INFO (XSTRM-180): You have not used the objectMap option. The design has instance(s) of at least one of following OpenAccess objects: oaBlockage, oaBoundary, oaRow, and oaMarker. Any information about these objects will not be translated into the generated stream file. Use the objectMap option to translate/preserve these objects using XStream. For details on the objectMap option, refer to the "Design Data Translator's Reference" guide for XStream.
    
    Summary of Objects Translated:
    	Scalar Instances:                       14
    	Array Instances:                        0
    	Polygons:                               4
    	Paths:                                  0
    	Rectangles:                             397
    	Lines:                                  0
    	Arcs:                                   0
    	Donuts:                                 0
    	Dots:                                   0
    	Ellipses:                               0
    	Boundaries:                             0
    	Area Blockages:                         0
    	Layer Blockages:                        0
    	Area Halos:                             0
    	Markers:                                0
    	Rows:                                   0
    	Standard Vias                           32
    	Custom Vias:                            0
    	CdsGen Vias:                            0
    	Pathsegs:                               117
    	Text:                                   2
    	TextDisplay:                            7
    	Cells:                                  7
    
    Elapsed Tim
    e: 0.1s   User Time: 0.1s   CPU Time: 0.0s   Peak VM: 3076KB
    
    INFO (XSTRM-234): Translation completed. '0' error(s) and '1' warning(s) found.
    
    
    log port port:"./calview.log"
    //
    //  CalibreView Settings:
    //	  Netlist File: /home/viventi_lab_admin/gs_test/xi10/./calibre/AND6_ver2.pex.netlist
    //	  Output Library: chip
    //	  Schematic Library: chip
    //	  Cellmap File: /opt/xfab/XKIT/xi10/mentor/v2_0/PEX_calibre/v2_0_2/calview.cellmap
    //	  Log File: ./calview.log
    //	  Calibre View Name: calibre
    //	  Calibre View Type: maskLayout
    //	  Magnify Devices by: 1.000000
    //	  Magnify Parasitics by: 1.000000
    //	  Create Terminals: if matching terminal exists on symbol
    //	  Reset Properties: ("m=1")
    //	  Generate SPECTRE Netlist: off
    //
    ****************************
    Running Back Annotation Flow
    ****************************
    Calibre View generation encountered a fatal Error.
    Please consult the logfile for messages.
    
    *Error* close: argument #1 should be an I/O port (type template = "p") - nil
    Let me know if you need more detail/clarification! Thanks again!



  6. #6
    Advanced Member level 5
    Points: 8,257, Level: 21

    Join Date
    Apr 2016
    Posts
    1,739
    Helped
    304 / 304
    Points
    8,257
    Level
    21

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    I think the tool is having issues with outputting a log file. Make sure the folder has write permission set correctly. Make sure the logfile argument is being passed correctly.
    Really, I am not Sam.



    •   AltAdvertisement

        
       

  7. #7
    Newbie level 4
    Points: 55, Level: 1

    Join Date
    Jun 2019
    Posts
    7
    Helped
    0 / 0
    Points
    55
    Level
    1

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    Quote Originally Posted by ThisIsNotSam View Post
    I think the tool is having issues with outputting a log file. Make sure the folder has write permission set correctly. Make sure the logfile argument is being passed correctly.
    I see a file created called "calview.log" in the folder I run it from (the name assigned in the calibreview pop up menu) and in the file this is all that is there:

    Code:
    //
    //  CalibreView Settings:
    //	  Netlist File: /home/viventi_lab_admin/gs_test/xi10/calibre/AND6_ver2.pex.netlist
    //	  Output Library: chip
    //	  Schematic Library: chip
    //	  Cellmap File: /opt/xfab/XKIT/xi10/mentor/v2_0/PEX_calibre/v2_0_2/calview.cellmap
    //	  Log File: ./calview.log
    //	  Calibre View Name: calibre
    //	  Calibre View Type: maskLayout
    //	  Magnify Devices by: 1.000000
    //	  Magnify Parasitics by: 1.000000
    //	  Create Terminals: if matching terminal exists on symbol
    //	  Reset Properties: ("m=1")
    //	  Generate SPECTRE Netlist: off
    //
    The netlist file is created as well (I see it with the correct time stamp). Why do you think my log file is not being generated correctly? I think it must have had write permission because it wrote this, no?



  8. #8
    Full Member level 1
    Points: 1,331, Level: 8

    Join Date
    Mar 2015
    Location
    USA
    Posts
    106
    Helped
    20 / 20
    Points
    1,331
    Level
    8

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    What do your pins look like? Do you have a metal on the appropriate layer, label included too? No “illegal” names such as “+”, “-“, etc. pins should be on the “pin” layer if that’s in the pdk otherwise, put it on the “drw” layer. Labels go on “lbl“, needs to be on the same metal layer too.

    Did you include the PEX rule file?

    Any ERC warnings?

    Did you do anything atypical in schematic/layout?



  9. #9
    Newbie level 4
    Points: 55, Level: 1

    Join Date
    Jun 2019
    Posts
    7
    Helped
    0 / 0
    Points
    55
    Level
    1

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    Quote Originally Posted by ljp2706 View Post
    What do your pins look like? Do you have a metal on the appropriate layer, label included too? No “illegal” names such as “+”, “-“, etc. pins should be on the “pin” layer if that’s in the pdk otherwise, put it on the “drw” layer. Labels go on “lbl“, needs to be on the same metal layer too.

    Did you include the PEX rule file?

    Any ERC warnings?

    Did you do anything atypical in schematic/layout?
    My pins are on MET1 - pin layer, my label is on MET1 pin layer (there was no label layer, and I got LVS to work by putting it on this layer), I am not using any illegal names.

    Yes, I included the PEX rule file as the first step.

    No ERC warnings. My DRC was clean and my LVS was clean. I had the following LVS warnings though:
    Code:
    LVS BOX cell "HALL_ND" not located or not allowed.
    Cannot enable LVS PUSH DEVICES because pin location information was requested.
    Could this be the problem?



  10. #10
    Full Member level 1
    Points: 1,331, Level: 8

    Join Date
    Mar 2015
    Location
    USA
    Posts
    106
    Helped
    20 / 20
    Points
    1,331
    Level
    8

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    After the PEX run completes, are there any other error messages in the CIW?

    Are you sure that the ground node name that you entered is correct, and is present on your layout? Try running it once without enabling this to see if that might be the issue.



    •   AltAdvertisement

        
       

  11. #11
    Newbie level 4
    Points: 55, Level: 1

    Join Date
    Jun 2019
    Posts
    7
    Helped
    0 / 0
    Points
    55
    Level
    1

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    Quote Originally Posted by ljp2706 View Post
    After the PEX run completes, are there any other error messages in the CIW?

    Are you sure that the ground node name that you entered is correct, and is present on your layout? Try running it once without enabling this to see if that might be the issue.
    No, there are no other errors in the CIW besides the one I reported in the original post. I am sure that my ground node name I entered is correct and present on my layout (it would fail LVS if this were not consistent and as I said it passes LVS). However, I did rerun it without enabling the ground node name and I got the same error.

    I am wondering if there is something wrong with the cellmap file because I cannot see what else it would be at this point. Do you have any more ideas?

    Thank you so much for the thoughts so far!



  12. #12
    Full Member level 1
    Points: 1,331, Level: 8

    Join Date
    Mar 2015
    Location
    USA
    Posts
    106
    Helped
    20 / 20
    Points
    1,331
    Level
    8

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    Not sure, I agree with one of the previous comments that you might need to check your permissions. See if you have write access to the directory that everything is stored in. That might very well be part of the issue.



  13. #13
    Newbie level 4
    Points: 55, Level: 1

    Join Date
    Jun 2019
    Posts
    7
    Helped
    0 / 0
    Points
    55
    Level
    1

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    Quote Originally Posted by ljp2706 View Post
    Not sure, I agree with one of the previous comments that you might need to check your permissions. See if you have write access to the directory that everything is stored in. That might very well be part of the issue.
    Just checked and I do have read and write permission.

    Okay so here is one lead I had. I talked with mentor people and they said add this to your source file "export CALIBRE_ENABLE_SKILL_PEXBA_MODE=1" This got my calibre error to go away but now I'm having simulation issues with spectre. Will update you all as I find the solution...



  14. #14
    Full Member level 1
    Points: 1,331, Level: 8

    Join Date
    Mar 2015
    Location
    USA
    Posts
    106
    Helped
    20 / 20
    Points
    1,331
    Level
    8

    Re: "calibre view generation encountered a fatal error" but spectre PEX extraction wo

    What are the simulation errors? Also, what does the CIW say after the file is generated?



--[[ ]]--