I got error since I use env.cmd file and setenv commands. Below, this is what the compiler show me:
../RTL/analog_mux2_ent.vhdl: S : in real_vector (2**INPUTS_SEL-1 downto 0); |ncvhdl_p: *E,IDENTU (../RTL/analog_mux2_ent.vhdl,12|24): identifier (REAL_VECTOR) is not declared [10.3]. errors: 1, warnings: 0
With real type I've gor no error, but with real_vector I've got this error. Can you help please ?
You didn't say what your compilation command is, so I can only guess that you forgot the -v200x option. By default, ncvhdl expects VHDL87 code, so for the real_vector support you have to specifically enable compilation with support for the IEEE Std 1076-2008 standard which defines real_vector.
More information can be found by runnning the "cdnshelp" application and searching in its GUI for "real_vector" - the first hit takes you to the relevant information including some examples and the compiler option.
In reply to StephenH:
You're right, the -v200x command solve the problem. Even though I've already used real_vector successfully without the command -v200x...
In reply to sebgimi:
sebgimiYou're right, the -v200x command solve the problem. Even though I've already used real_vector successfully without the command -v200x...
Probably you were compiling with the -ams switch. The REAL_VECTOR type was initially part of the IEEE LRM for VHDL with AMS extensions (1076.1-1999) standard. For a pure digital design you need to use -v200x switch.
I got the same error when I did VHDLin from CIW guide, I tried to specify this in the compiler option -v200x but it did not work.
How do I specify this in cdsenv or .cdsinit?
Thanks in Advance