• 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. Spectre simulation of verilogA file

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 125
  • Views 17009
  • 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

Spectre simulation of verilogA file

Krishnaa
Krishnaa over 7 years ago

Dear All,

        My schematic consists of a dc voltage source and a simple resistor written in verilogA, just to understand how to use verilogA files with Virtuoso ADE. The netlist from Virtuoso ADEL -> Simulation -> Netlist -> Display is as follows:

// Generated for: spectre
// Generated on: Mar 23 01:58:58 2018
// Design library name: labs
// Design cell name: testing_verilogA
// Design view name: schematic
simulator lang=spectre
global 0

// Library name: labs
// Cell name: testing_verilogA
// View name: schematic
V0 (net2 0) vsource dc=1.2 type=dc
I0 (net2 0) resistor_verilogA r=1
simulatorOptions options reltol=1e-3 vabstol=1e-6 iabstol=1e-12 temp=27 \
    tnom=25 scalem=1.0 scale=1.0 gmin=1e-12 rforce=1 maxnotes=5 maxwarns=5 \
    digits=5 cols=80 pivrel=1e-3 sensfile="../psf/sens.output" \
    checklimitdest=psf
dc dc dev=V0 param=dc start=0 stop=1.2 write="spectre.dc" oppoint=rawfile \
    maxiters=150 maxsteps=10000 annotate=status
modelParameter info what=models where=rawfile
element info what=inst where=rawfile
outputParameter info what=output where=rawfile
designParamVals info what=parameters where=rawfile
primitives info what=primitives where=rawfile
subckts info what=subckts where=rawfile
save I0:in
saveOptions options save=allpub
ahdl_include "/home/sv376/Cadence/AHDL_stuff/resistor_verilogA/veriloga/veriloga.va"

        After running the dc simulation, the error in my Virtuoso CDS.log window is:

ERROR (ADE-3036): Errors encountered during simulation. The simulator run log has not been generated.

Possible cause could be an invalid command line option for the version of the simulator

you are running. Choose Setup->Environment and verify that the command line options

specified in the userCmdLineOption field are supported for the simulator.

Alternatively, run the simulator standalone using the runSimulation file in the netlist

directory to know the exact cause of the error.

        So I went to my netlist directory from my terminal and used the ./runSimulation command. The resulting output is as follows:

Includes RSA BSAFE(R) Cryptographic or Security Protocol Software from RSA
        Security, Inc.

User: sv376   Host: en-ec-ph314-10.ece.cornell.edu   HostID: FD80C911   PID:
        31974
Memory  available: 6.5414 GB  physical: 16.5123 GB
Linux   : Red Hat Enterprise Linux Server release 7.4 (Maipo)
CPU Type: Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz
        Socket: Processors [Frequency] (Hyperthreaded Processor)
        0:       0 [3576.1] (  4 ),  1 [3850.0] (  5 ),  2 [3856.1] (  6 )
                 3 [3949.8] (  7 )
        
System load averages (1min, 5min, 15min) : 1.2 %, 1.9 %, 2.9 %
Hyperthreading is enabled


Simulating `input.scs' on en-ec-ph314-10.ece.cornell.edu at 1:59:53 AM, Fri Mar
        23, 2018 (process id: 31974).
Current working directory:
        /home/sv376/Cadence/labs/testing_verilogA/spectre/schematic/netlist

Warning from spectre.
    WARNING (CMI-2015): Unable to open log file `../psf/spectre.out'.
        Success.
Reading file:
        /home/sv376/Cadence/labs/testing_verilogA/spectre/schematic/netlist/input.scs
Reading link:  /opt/cadence/mmsim
Reading file:
        /opt/cadence/MMSIM151/tools.lnx86/spectre/etc/configs/spectre.cfg
Reading file:  /usr/include/stdc-predef.h
Reading file:
        /home/sv376/Cadence/AHDL_stuff/resistor_verilogA/veriloga/veriloga.va
Reading file:
        /opt/cadence/MMSIM151/tools.lnx86/spectre/etc/ahdl/constants.vams
Reading file:
        /opt/cadence/MMSIM151/tools.lnx86/spectre/etc/ahdl/disciplines.vams
Time for NDB Parsing: CPU = 46.849 ms, elapsed = 127.028 ms.
Time accumulated: CPU = 58.888 ms, elapsed = 127.031 ms.
Peak resident memory used = 31.4 Mbytes.


The CPU load for active processors is :
        Spectre  0 (30.8 %)      1 (7.7 %)       2 (7.7 %)       4 (7.7 %)
                 6 (8.3 %)       7 (9.1 %)      
        Other   

Error found by spectre during AHDL read-in.
    ERROR (VACOMP-1024): Unable to create directory input.ahdlSimDB/ (775)
    ERROR (VACOMP-1024): Unable to create directory
        input.ahdlSimDB//.resistor_verilogA.ahdlcmi/ (775)
    ERROR (VACOMP-1024): Unable to create directory
        input.ahdlSimDB//.resistor_verilogA.ahdlcmi/Linux/ (775)
    ERROR (VACOMP-2252): Cannot open file:
        input.ahdlSimDB//.resistor_verilogA.ahdlcmi/Linux/resistor_verilogA.lst
        - C-code will not be generated !!!

Reading link:  /opt/cadence/mmsim/tools.lnx86/spectre/etc/ahdl/discipline.h
Reading link:  /opt/cadence/mmsim/tools.lnx86/spectre/etc/ahdl/constants.h
Time for Elaboration: CPU = 19.989 ms, elapsed = 25.1319 ms.
Time accumulated: CPU = 78.993 ms, elapsed = 152.279 ms.
Peak resident memory used = 38.1 Mbytes.


Aggregate audit (1:59:53 AM, Fri Mar 23, 2018):
Time used: CPU = 79.1 ms, elapsed = 152 ms, util. = 51.9%.
Time spent in licensing: elapsed = 14.6 ms, percentage of total = 9.56%.
Peak memory used = 38.2 Mbytes.
Simulation started at: 1:59:53 AM, Fri Mar 23, 2018, ended at: 1:59:53 AM, Fri
        Mar 23, 2018, with elapsed time (wall clock): 152 ms.
spectre completes with 4 errors, 1 warning, and 0 notices.

        At this point, I have tried web searches and the forum and to see how to resolve 'unable to create directory ....' errors that occur above. Why is spectre unable to create the above directories? How can I resolve this issue? I appreciate any help I can get. Thank you!

Regards,

Krishnaa

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 7 years ago

    Krishnaa,

    Most likely this is either a UNIX permission problem (not so likely given that ADE managed to create the netlist, unless there are some strange permissions in the netlist directory) or a UNIX disk space or quota issue. Try doing the "runSimulation" again, and if it produces the same errors (maybe you've freed enough space in the meantime) try (with your working directory as the netlist directory) doing: "mkdir someDirectory" and seeing what happens.

    It's really extremely likely to be a UNIX level problem and nothing to do with the simulator itself. 

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Krishnaa
    Krishnaa over 7 years ago in reply to Andrew Beckett

    Hi Andrew, 

        Thanks for the quick reply. I tried a few things to try resolve the issue without success. I cleared most of the disk space (pretty much with just my verilogA, schematic, spectre files left), and tried running './runSimulation', but I do get the same errors. 'mkdir' does create a directory in the netlist folder, so might be only Cadence has weird permissions for creating folders in the netlist directory, since all the errors report having a (775) permission. There is an empty input.ahdlSimDB folder however, after the "./runSimulation". This empty folder does not appear when I run the simulation from the ADE L window. 

        So I changed the permissions of netlist folder from 775 to 777 with "chmod 777 netlist" & "umask 000", to see if they help. After these changes, when I use './runSimulation', it still creates the input.ahdlSimDB folder with 775 permission, and it gives the same errors, whereas folders created with mkdir command in the netlist folder have 777 permissions. I reset the permissions of the empty input.ahdlSimDB folder manually from 775 to 777 and ran the simulation again, but it did not help. Might be making input.ahdlSimDB folder always be created with a 777 permission would help, but I am not sure how to do this, or might be there is some other problem I am not able to identify. Do let me know if you can see any changes I could make. Thank you!

    Krishnaa

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 7 years ago in reply to Krishnaa

    Changing the umask to 0 is unlikely to help as that only adds "other" write permission; you should already have write permission for you as the user (and  your group, given that your umask was 002 before and it was creating files with permission 775).

    I did wonder whether this was a filesystem with 64-bit inode support, and maybe you're running 32-bit spectre - but I think it wouldn't be able to read the netlist if that was the case (you can check by turning on "64bit" in the Setup->Environment menu in ADE.

    However, I still think it's a basic UNIX issue. Can you (in the netlist directory) try:

    df -k .
    quota -v

    and report what you see? 

    I'd check with your IT too, and if that doesn't help, this probably would be best dealt with via customer support.

    Regards,

    Andrew 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Krishnaa
    Krishnaa over 7 years ago in reply to Andrew Beckett

    It worked! I could not help smiling when it compiled. I set it to 64 bit in my ADE and it worked. So I guess that 32-bit spectre was the issue. Thanks a lot Andrew!

    Krishnaa

    • 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