• 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. Mixed-Signal Design
  3. issue in vhdl-ams compilation

Stats

  • Locked Locked
  • Replies 8
  • Subscribers 65
  • Views 18411
  • 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

issue in vhdl-ams compilation

sebgimi
sebgimi over 11 years ago

Hi,

I'm trying to write a code for a comparator in vhdl-ams. I use incisiv (13.10.013) and when I compile the code (just the entity) an error is occuring:

This is my code:

library ieee;
use ieee.electrical_systems.all;
use ieee.std_logic_1164.all;
use ieee.math_real.all;

entity comparator is

 generic (level : real := 2.5; -- threshold
   vcc   : real := 5.0;   
   gnd   : real := 0.0);  

 port(--terminal e: electrical;  -- analogic in
            signal   s: out std_logic); -- digital out

end comparator;

When I write exactly what is below, the following error is occuring:

ncvhdl -work st_lib -message ../sources/comparateur_ent.vhdl
ncvhdl: 12.20-p001: (c) Copyright 1995-2012 Cadence Design Systems, Inc.
../sources/comparateur_ent.vhdl:
use ieee.electrical_systems.all;
        |
ncvhdl_p: *E,SELLIB (../sources/comparateur_ent.vhdl,2|8): unit (ELECTRICAL_SYSTEMS) not found in library (IEEE).
        errors: 1, warnings: 0

It look like that the library electrical_systems is not recognized by the compiler.

 Someone can help please?

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 11 years ago

    If in your cds.lib you have something like this:

     INCLUDE $IUSHOME/tools/inca/files/cds.lib

    which will give you access to the IEEE (ieee) library. However, for AMS use you need to instead have:

     INCLUDE $IUSHOME/tools/inca/files/IEEE_vhdlams/cds.lib

    If you compile your example with this in your cds.lib, it will compile fine.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • sebgimi
    sebgimi over 11 years ago

    Hi,

    Thanks a lot! That's work now, but when I remove comment on the following line: " terminal e : electrical; " this error appear:

     ncvhdl -work st_lib -message ../sources/comparateur_ent.vhdl
    ncvhdl: 13.10-s013: (c) Copyright 1995-2013 Cadence Design Systems, Inc.
    ../sources/comparateur_ent.vhdl:
            port(terminal e: electrical;  -- entree analogique
                          |
    ncvhdl_p: *E,MISCOL (../sources/comparateur_ent.vhdl,12|15): expecting a colon (':') 87[4.3.3] 93[4.3.2].
            errors: 1, warnings: 0

    Is this ok if the word "terminal" is not in color like others key word in ams? Do I use the right library for vhdl-ams?

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

    I didn't notice this earlier, but you need to pass -ams on the ncvhdl command line:

     ncvhdl -work st_lib -ams -message ../sources/comparateur_ent.vhdl

    That will fix the problem. You need this if you are compiling VHDL-AMS code.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • sebgimi
    sebgimi over 11 years ago

    Hi,

     Everything is ok now, thank you very much!

    Regards,

    Sebastien.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • srana01
    srana01 over 8 years ago
    Hi Andrew,
    Has the cds.lib location for ams changed in the most recent version of Cadence (6.1.6 64b)? When I use the above statement in my cds.lib file I get the following error on compilation:

    INCLUDE $IUSHOME/tools/inca/files/cds.lib
    |
    ncvhdl: *W,DLCPTH (./cds.lib,28): cds.lib No such file '/Incisive/tools/inca/files/cds.lib' (cds.lib command ignored).
    TOOL: ncvhdl(64) 14.10-s004: Started on Apr 27, 2017 at 11:02:41 BST
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 8 years ago

    No, this has not changed. Are you sure that your INCISIVE installation is at /Incisive? Perhaps $IUSHOME is not set properly. 

    This is nothing to do with the IC version you're using (IC6.1.6) - it's related to whatever you have set $IUSHOME to in your environment.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • srana01
    srana01 over 8 years ago
    Thanks Andrew.

    I have found two locations which seem relevant:

    usr/local/cadence/current2016-17/INCISIVE_15.20.010/tools/inca/files/IEEE_vhdlams/cds.lib

    and

    usr/local/cadence/current/INCISIV141/tools.lnx86/inca/files/IEEE_vhdlams/cds.lib

    do you think either of these might be the correct cds.lib file?
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • srana01
    srana01 over 8 years ago
    Sorry, the two locations are as follows:

    usr/local/cadence/2016-17/INCISIVE_15.20.010/tools/inca/files/IEEE_vhdlams/cds.lib

    and

    usr/local/cadence/current/INCISIV141/tools.lnx86/inca/files/IEEE_vhdlams/cds.lib
    • 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