Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
9 years ago

Quartus not recognizing VHDL functions in 2008 version of ieee.numeric_std

I have a bunch of VHDL code that works in SynplifyPro, but I'm having trouble getting it working in Quartus. It appears that Quartus is using an outdated version of ieee.numeric_std, but I have no idea how or where that is specified. I am using a tcl-based compile flow, which includes the following command:

set_global_assignment -name VHDL_INPUT_VERSION VHDL_2008

But when I run synthesis, I get error such as:

Error (10327): VHDL error at <file>.vhd(<line>): can't determine definition of operator ""sra"" -- found 0 possible definitions

Error (10476): VHDL error at <file>.vhd(<line>): type of identifier "<signal>" does not agree with its usage as "std_logic_vector" type

These functions are clearly defined in:

$QUARTUS_INSTALL_DIR/libraries/vhdl/ieee/2008/std_1164_vhdl2008.vhd

$QUARTUS_INSTALL_DIR/libraries/vhdl/ieee/2008/numeric_std_vhdl2008.vhd

and not defined in:

$QUARTUS_INSTALL_DIR/libraries/vhdl/ieee/1993/std_1164_vhdl1993.vhd

$QUARTUS_INSTALL_DIR/libraries/vhdl/ieee/1993/numeric_std_vhdl1993.vhd

Does anyone know of way to confirm that Quartus is using the outdated packages, and how to specify using the 2008 packages?

I am using Quartus II Version 15.0.0

7 Replies