• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC Design
  3. Simulation failed, cannot compile ahdl libraries

Stats

  • Locked Locked
  • Replies 10
  • Subscribers 124
  • Views 19696
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Simulation failed, cannot compile ahdl libraries

Kabal
Kabal over 12 years ago

 Hello, I am using the IBM0.18um kit, and so far can simulate stuff without problems.

Now that i have added some customizable ESD structures to schematic, then i layed it all out, checked, lvs'ed, no problems so far.

What i want to do now is simulate the whole thing, and for some reason Cadence does not do it saying that it cannot compile ahdlcmi module library. I am not quite sure what has to be done to feed that data correctly and make MMSIM 10 simulate everything?

 

below is a log file:

 
Created directory input.ahdlSimDB/ (775)
Created directory input.ahdlSimDB//2156_cmrf7sf_relML_Spectre_models_esd_modules.va.It2_monitor.ahdlcmi/ (775)
Created directory input.ahdlSimDB//2156_cmrf7sf_relML_Spectre_models_esd_modules.va.It2_monitor.ahdlcmi/Linux/ (775)
Compiling ahdlcmi module library.

Error found by spectre during AHDL read-in.
    ERROR (VACOMP-1008): Cannot compile ahdlcmi module library. Check the log file input.ahdlSimDB//2156_cmrf7sf_relML_Spectre_models_esd_modules.va.It2_monitor.ahdlcmi/Linux/../ahdlcmi.out for details. If the compiler ran out of memory, use 'setenv CDS_CMI_COMPLEVEL 0', and try again. If the reason for the failure was a syntax error, contact your Cadence Customer Support representative with the netlist, log files, behavioral model files, and any other information that can help identify the problem.
    ERROR (SFE-91): Error when elaborating the instance It2_monitor. Simulation should be terminated.

Opening directory input.ahdlSimDB/ (775)
Opening directory input.ahdlSimDB//2156_cmrf7sf_relML_Spectre_models_esd_modules.va.It2_monitor.ahdlcmi/ (775)
Opening directory input.ahdlSimDB//2156_cmrf7sf_relML_Spectre_models_esd_modules.va.It2_monitor.ahdlcmi/Linux/ (775)

Error found by spectre during AHDL read-in.
    ERROR (VACOMP-2235): Internal Compiling Error: The built-in termcurs parameter is redefined in module 'It2_monitor'.
        Please send the netlist, log files, behavioral model files, and any other information that can help identify the problem to support@cadence.com.
    ERROR (VACOMP-1816): Exiting AHDL compilation.
    ERROR (SFE-91): Error when elaborating the instance It2_monitor. Simulation should be terminated.

Opening directory input.ahdlSimDB/ (775)
Created directory input.ahdlSimDB//2156_cmrf7sf_relML_Spectre_models_mvcap.va.mosvarcap.ahdlcmi/ (775)
Created directory input.ahdlSimDB//2156_cmrf7sf_relML_Spectre_models_mvcap.va.mosvarcap.ahdlcmi/Linux/ (775)
Compiling ahdlcmi module library.

Error found by spectre during AHDL read-in.
    ERROR (VACOMP-1008): Cannot compile ahdlcmi module library. Check the log file input.ahdlSimDB//2156_cmrf7sf_relML_Spectre_models_mvcap.va.mosvarcap.ahdlcmi/Linux/../ahdlcmi.out for details. If the compiler ran out of memory, use 'setenv CDS_CMI_COMPLEVEL 0', and try again. If the reason for the failure was a syntax error, contact your Cadence Customer Support representative with the netlist, log files, behavioral model files, and any other information that can help identify the problem.
    ERROR (SFE-91): Error when elaborating the instance mosvarcap. Simulation should be terminated.
Error found by spectre during AHDL read-in.
    ERROR (VACOMP-1697): "parameter real (*integer inherited_mfactor; *) m=1;<<--? "
        "Internal (bsource)", line 381: Attempting to redefine identifier 'm'. Remove the extra definition or use a different identifier.


Time for Elaboration: CPU = 1.00685 s, elapsed = 1.58013 s.
Time accumulated: CPU = 1.41178 s, elapsed = 2.02404 s.
Peak resident memory used = 40.2 Mbytes.

spectre terminated prematurely due to fatal error.

 

by the way, i tried setenv CDS_CMI_COMPLEVEL 0, it did not help.

any ideas?

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    Did you try checking the log file that it suggested:

    input.ahdlSimDB//2156_cmrf7sf_relML_Spectre_models_mvcap.va.mosvarcap.ahdlcmi/Linux/../ahdlcmi.out

    What does that say? Which OS are you running on? (please post the output of:
    cat /etc/redhat-release ; uname -a
    )

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Kabal
    Kabal over 12 years ago

    That directory is not explicitly specified, where do i find input.ahdlSimDB... ?  under which directory should i find it? I looked in Simulation folder, cadence folder under which i have all files, and could not find that file?

     

    and regarding the version of OS:

    Scientific Linux release 6.1 (Carbon)
    Linux desktop1 2.6.32-220.23.1.el6

    So far there were no issues with that, i can simulate just about anything, layout, lvs etc... except this error..

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago
    The input.ahdlSimDb dir should be adjacent to the input.scs file, which is in the "netlist" directory produced by ADE.

    If you display the netlist in ADE, the banner should give the full path to where that is.

    Andrew
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Kabal
    Kabal over 12 years ago

     Thanks Andrew, well, here goes the log from that last simulation whcih failed:

     

    ahdlcmicompile: Compiling ahdlcmi in input.ahdlSimDB//2156_cmrf7sf_relML_Spectre_models_mvcap.va.mosvarcap.ahdlcmi/Linux/ for Linux with optimize using gcc on Mon Nov  5 13:07:40 MST 2012 [5.0]
    ahdlcmicompile: Generating makefile
    PATH:  /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.1/install/bin:/opt/cadence/IC610/bin:/opt/cadence/IC610/tools/bin:/opt/cadence/IC610/share/oa/bin:/opt/cadence/ASSURA41/tools/dfII/bin:/opt/cadence/ASSURA41/tools/assura/bin:/opt/cadence/ASSURA41/tools/bin:/opt/cadence/EXT101/tools/bin:/opt/cadence/MMSIM111/tools/bin:/opt/cadence/IC610/share/bin:/opt/cadence/IC610/tools/dfII/bin:/usr/lib/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/MATLAB/R2012a/bin:/home/blackops/bin
    LD_LIBRARY_PATH:  /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.1/install/lib:/opt/cadence/MMSIM111/tools/lib:/opt/cadence/MMSIM111/tools.lnx86/mdl/lib:/opt/cadence/MMSIM111/tools.lnx86/mmsim/lib:/opt/cadence/MMSIM111/tools.lnx86/inca/lib:/opt/cadence/MMSIM111/tools.lnx86/spectre/lib:/opt/cadence/MMSIM111/tools.lnx86/lib/SuSE:/opt/cadence/IC610/tools/lib:/opt/cadence/IC610/tools/lib/SuSE/SLES11:/opt/cadence/IC610/share/oa/lib/linux_rhel40_32/opt:/opt/cadence/IC610/tools/QT/lib:/opt/cadence/IC610/tools/dfII/lib:/opt/cadence/IC610/tools/sev/lib:/opt/cadence/IC610/tools/inca/lib:/opt/cadence/ASSURA41/tools/assura/lib:/opt/cadence/ASSURA41/tools/lib:/opt/cadence/EXT101/tools/lib
    /opt/cadence/MMSIM111/tools.lnx86/spectre/ahdlcmi/bin/gnumake -j3 -f GNUmakefile
    Compiling C file mosvarcap_func.c (optimize) with -O0
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/bin/gcc  -march=i686 -m32 -ffast-math -O0 -DSYSV -DSVR4 -D_REENTRANT -fPIC   -DconfigSPECTRE -I. -I/opt/cadence/MMSIM111/tools.lnx86/spectre/ahdlcmi/include -c mosvarcap_func.c -o obj/optimize/5.0/mosvarcap_func.o || rm -f -f obj/optimize/5.0/mosvarcap_func.o
    Compiling C file mosvarcap_DcFuncDerLoad.c (optimize)
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/bin/gcc  -march=i686 -m32 -ffast-math -O0 -DSYSV -DSVR4 -D_REENTRANT -fPIC   -DconfigSPECTRE -I. -I/opt/cadence/MMSIM111/tools.lnx86/spectre/ahdlcmi/include -c mosvarcap_DcFuncDerLoad.c -o obj/optimize/5.0/mosvarcap_DcFuncDerLoad.o || rm -f -f obj/optimize/5.0/mosvarcap_DcFuncDerLoad.o
    Compiling C file mosvarcap_DcFuncLoad.c (optimize)
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/bin/gcc  -march=i686 -m32 -ffast-math -O0 -DSYSV -DSVR4 -D_REENTRANT -fPIC   -DconfigSPECTRE -I. -I/opt/cadence/MMSIM111/tools.lnx86/spectre/ahdlcmi/include -c mosvarcap_DcFuncLoad.c -o obj/optimize/5.0/mosvarcap_DcFuncLoad.o || rm -f -f obj/optimize/5.0/mosvarcap_DcFuncLoad.o
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/bin/cdsgcc: line 264: /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/install/bin/gcc: cannot execute binary file
    rm -f -rf mosvarcap_func.c
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/bin/cdsgcc: line 264: /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/install/bin/gcc: cannot execute binary file
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/bin/cdsgcc: line 264: /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/install/bin/gcc: cannot execute binary file
    rm -f -rf mosvarcap_DcFuncLoad.c
    Compiling C file mosvarcap_TranFuncDerLoad.c (optimize)
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/bin/gcc  -march=i686 -m32 -ffast-math -O0 -DSYSV -DSVR4 -D_REENTRANT -fPIC   -DconfigSPECTRE -I. -I/opt/cadence/MMSIM111/tools.lnx86/spectre/ahdlcmi/include -c mosvarcap_TranFuncDerLoad.c -o obj/optimize/5.0/mosvarcap_TranFuncDerLoad.o || rm -f -f obj/optimize/5.0/mosvarcap_TranFuncDerLoad.o
    rm -f -rf mosvarcap_DcFuncDerLoad.c
    Compiling C file mosvarcap_TranFuncLoad.c (optimize)
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/bin/gcc  -march=i686 -m32 -ffast-math -O0 -DSYSV -DSVR4 -D_REENTRANT -fPIC   -DconfigSPECTRE -I. -I/opt/cadence/MMSIM111/tools.lnx86/spectre/ahdlcmi/include -c mosvarcap_TranFuncLoad.c -o obj/optimize/5.0/mosvarcap_TranFuncLoad.o || rm -f -f obj/optimize/5.0/mosvarcap_TranFuncLoad.o
    Compiling C file mosvarcap_cmi_c.c (optimize) with -O0
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/bin/gcc  -march=i686 -m32 -ffast-math -O0 -DSYSV -DSVR4 -D_REENTRANT -fPIC   -DconfigSPECTRE -I. -I/opt/cadence/MMSIM111/tools.lnx86/spectre/ahdlcmi/include -I/opt/cadence/MMSIM111/tools.lnx86/cmi/include -c mosvarcap_cmi_c.c -o obj/optimize/5.0/mosvarcap_cmi_c.o || rm -f -f obj/optimize/5.0/mosvarcap_cmi_c.o
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/bin/cdsgcc: line 264: /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/install/bin/gcc: cannot execute binary file
    rm -f -rf mosvarcap_TranFuncDerLoad.c
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/bin/cdsgcc: line 264: /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/install/bin/gcc: cannot execute binary file
    rm -f -rf mosvarcap_TranFuncLoad.c
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/bin/cdsgcc: line 264: /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/install/bin/gcc: cannot execute binary file
    rm -f -rf mosvarcap_cmi_c.c
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/bin/gcc -shared -O0 -fPIC -o obj/optimize/5.0/libahdlcmi.so ./obj/optimize/5.0/mosvarcap_func.o ./obj/optimize/5.0/mosvarcap_DcFuncDerLoad.o ./obj/optimize/5.0/mosvarcap_DcFuncLoad.o ./obj/optimize/5.0/mosvarcap_TranFuncDerLoad.o ./obj/optimize/5.0/mosvarcap_TranFuncLoad.o ./obj/optimize/5.0/mosvarcap_cmi_c.o  -m32 -Wl,-rpath,/usr/lib -Wl,-rpath,/lib -s
    /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/bin/cdsgcc: line 264: /opt/cadence/MMSIM111/tools.lnx86/cdsgcc/gcc/4.4/install/bin/gcc: cannot execute binary file
    gnumake: *** [obj/optimize/5.0/libahdlcmi.so] Error 126
    gnumake: *** No rule to make target `obj/optimize/5.0/mosvarcap_func.o', needed by `obj/optimize/5.0/libahdlcmi.so'.  Stop.
     

     

    Now, as you see gnumake failed and it seems that it just couldnt execute binary file, gcc.

    I navigated to that folder and saw that its there, but the weird thing is it has: 55261 - user #55261  as an owner. I have no Idea why that would be? 

    and i tried to change ownership of that file as a root, and give it to me, just to test if it works, but the "chown myuser bin" did not do anything!

     any idea what can be done ?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    My guess is that you're running a 32-bit OS, and we only support 64-bit OS versions these days (plus the fact that you're using an unsupported distribution of Linux, but that's probably not the issue). I would expect the "uname -a" output to have  x86_64 in it somewhere.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Kabal
    Kabal over 12 years ago

    thanks. Yes that was the problem I later on discovered, so to get it working on 32bit I had to switch to MMSIM10 on those machines.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • aCadenceUser
    aCadenceUser over 5 years ago in reply to Andrew Beckett

    hi Andrew , 

    I have a similar problem for the 64 bit OS

    would you please help me?

    Created directory input.ahdlSimDB/ (775)
    Created directory input.ahdlSimDB//bsource.va.bsource_1.ahdlcmi/ (775)
    Created directory input.ahdlSimDB//bsource.va.bsource_1.ahdlcmi/Linux-64/ (775)
    Compiling ahdlcmi module library.

    Error found by spectre during AHDL read-in.
    ERROR (VACOMP-1008): Cannot compile ahdlcmi module library. Check the log file input.ahdlSimDB//bsource.va.bsource_1.ahdlcmi/Linux-64/../ahdlcmi.out for details. If the compiler ran out of memory, use 'setenv CDS_CMI_COMPLEVEL 0', and try again. If the reason for the failure was a syntax error, contact your Cadence Customer Support representative with the netlist, log files, behavioral model files, and any other information that can help identify the problem.
    ERROR (SFE-91): Error when elaborating the instance bsource_1. Simulation should be terminated.
    Error found by spectre during hierarchy flattening.

    Time for Elaboration: CPU = 172.385 ms, elapsed = 2.89015 s.
    Time accumulated: CPU = 2.3751 s, elapsed = 5.5987 s.
    Peak resident memory used = 79.6 Mbytes.

    spectre terminated prematurely due to fatal error.

    ////////////////////////////////////////////////     in the log file


    ld: BFD (GNU Binutils) 2.20 internal error, aborting at ../../binutils-2.20/bfd/reloc.c line 446 in bfd_get_reloc_size

    ld: Please report this bug.

    collect2: ld returned 1 exit status
    gnumake: *** [obj/optimize/5.0/bsource_1_libahdlcmi.so] Error 1
    /opt/Cadence/MMSIM131/tools.lnx86/cdsgcc/gcc/4.4/bin/gcc -shared -O3 -m64 -fPIC -o obj/optimize/5.0/bsource_1_libahdlcmi.so ./obj/optimize/5.0/bsource_1_func.o ./obj/optimize/5.0/bsource_1_DcFuncDerLoad.o ./obj/optimize/5.0/bsource_1_DcFuncLoad.o ./obj/optimize/5.0/bsource_1_TranFuncDerLoad.o ./obj/optimize/5.0/bsource_1_TranFuncLoad.o ./obj/optimize/5.0/bsource_1_HbFuncLoad.o ./obj/optimize/5.0/bsource_1_OpPointCalc.o ./obj/optimize/5.0/bsource_1_cmi_c.o -Wl,-rpath,/usr/lib -Wl,-rpath,/lib -s
    ld: BFD (GNU Binutils) 2.20 internal error, aborting at ../../binutils-2.20/bfd/reloc.c line 446 in bfd_get_reloc_size

    ld: Please report this bug.

    collect2: ld returned 1 exit status
    gnumake: *** [obj/optimize/5.0/bsource_1_libahdlcmi.so] Error 1

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago in reply to aCadenceUser

    Which OS are you using and which version of the OS ("lsb_release -a" at the UNIX prompt should tell you all of this, I think). If isb_release doesn't work, try using "cat /etc/os-release".

    Also, which spectre version are you using? "spectre -W" at the UNIX prompt will tell you this.

    I found one case which reported exactly the same error, and in that case they were using Debian which is an unsupported OS.

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • aCadenceUser
    aCadenceUser over 5 years ago in reply to Andrew Beckett

    You right I am using  spectre 13.1.0.066 on Ubuntu 16.04.4 LTS.

    I wish it was supported, for it works very well except for whatever refers to ahdllib.

    Thank you

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago in reply to aCadenceUser

    Actually, MMSIM15.1 and SPECTRE16.1 and later are supported on Ubuntu 14. You are using a 6-year old version of MMSIM, so all bets are off.

    Whether these newer versions will work on Ubuntu 16 I'm not sure (as an OS, we only have limited support for it across our products - only a few releases support this). That said, we plan to drop support for Ubuntu in new releases this year (there has not been enough significant customer requests for this platform to warrant the additional testing and platform porting needed).

    If you are after a "free" OS version to use, CentOS would be a better fit. This is closer to RHEL and also has limited support too (it isn't officially supported for SPECTRE releases, but it's far more likely to be compatible with RHEL releases if you pick CentOS 6.X or CentOS 7.X).

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information