Vhdl can';t确定运算符的定义“&引用/&引用&“——”找到0个可能的定义

Vhdl can';t确定运算符的定义“&引用/&引用&“——”找到0个可能的定义,vhdl,fpga,quartus,Vhdl,Fpga,Quartus,如何解决此行中的以下错误: signal div : std_logic_vector(7 downto 0); div如果你真的想做这个部门(它是资源密集型的),请使用: div如果你真的想做这个部门(它是资源密集型的),请使用: div您认为std\u逻辑\u向量代表什么?只是一堆电线。你是怎么计算的?使用无符号并除以整数。不过,部门将需要大量资源。。。除非是2次幂,否则你不能(便携)混合和匹配Synopsys和IEEE数学软件包。std_logic_unsigned依赖于Synopsys

如何解决此行中的以下错误:

signal div : std_logic_vector(7 downto 0);

div如果你真的想做这个部门(它是资源密集型的),请使用:


div如果你真的想做这个部门(它是资源密集型的),请使用:


div您认为
std\u逻辑\u向量
代表什么?只是一堆电线。你是怎么计算的?使用无符号
并除以整数。不过,部门将需要大量资源。。。除非是2次幂,否则你不能(便携)混合和匹配Synopsys和IEEE数学软件包。std_logic_unsigned依赖于Synopsys软件包std_logic_Arith的无符号类型声明、运算符和函数。数字\u std或std\u logic\u unsigned都没有为“/”运算符提供带有std\u logic\u向量参数和结果的声明。在这里使用它们是没有用的。如果您能够使用-2008模式,则可以使用IEEE软件包numeric_std_unsigned,或者numeric_std,将参数类型转换为unsigned,并将右手表达式赋值为std_logic_vector。同一错误上有四种常见变体,不同的VHDL运算符因工具供应商而异,该错误由标准定义。你认为
std\u logic\u vector
代表什么?只是一堆电线。你是怎么计算的?使用无符号
并除以整数。不过,部门将需要大量资源。。。除非是2次幂,否则你不能(便携)混合和匹配Synopsys和IEEE数学软件包。std_logic_unsigned依赖于Synopsys软件包std_logic_Arith的无符号类型声明、运算符和函数。数字\u std或std\u logic\u unsigned都没有为“/”运算符提供带有std\u logic\u向量参数和结果的声明。在这里使用它们是没有用的。如果您能够使用-2008模式,则可以使用IEEE软件包numeric_std_unsigned,或者numeric_std,将参数类型转换为unsigned,并将右手表达式赋值为std_logic_vector。同一错误上有四种常见变体,不同的VHDL运算符因工具供应商而异,该错误由标准定义。在中有一个深入的解释。
data\u in
作为一个
std\u逻辑向量
,函数
to\u unsigned
不会编译。@grorel在我的机器上编译得很好。除非我遗漏了什么函数原型是
函数TO_UNSIGNED(ARG,SIZE:NATURAL)返回UNRESOLVED_UNSIGNED你使用哪个库?@grorel我正在使用
库;使用ieee.std_logic_1164.all;使用ieee.numeric_std.all@grorel-Gah,你完全正确。我不知道我最后的评论来自哪里。更新了
中的答案
data\u作为一个
std\u逻辑向量
,函数
to\u unsigned
将无法编译。@grorel在我的机器上编译得很好。除非我遗漏了什么函数原型是
函数TO_UNSIGNED(ARG,SIZE:NATURAL)返回UNRESOLVED_UNSIGNED你使用哪个库?@grorel我正在使用
库;使用ieee.std_logic_1164.all;使用ieee.numeric_std.all@grorel-Gah,你完全正确。我不知道我最后的评论来自哪里。更新了答案
signal div : std_logic_vector(7 downto 0);
div <= data_in / "00001011";
div <= std_logic_vector(unsigned(data_in)/unsigned'("00001011"));