【发布时间】:2018-11-20 08:56:46
【问题描述】:
我该如何解决这个问题? reg 变量定义为:
signal reg:STD_LOGIC_VECTOR(7 downto 0):="00000001";
下面代码中ror操作有问题。错误信息是:
Line 109: Syntax error near "ror".
Line 108: found '0' definitions of operator "=", cannot determine exact overloaded matching definition for "="
--
process(clk1,up_down,enable,reset)
begin
if up_down="1" then
reg ror 1;
end if;
end process;
【问题讨论】:
-
up_down的类型是什么?字符串文字“1”不是那种类型。对于文件和受保护类型以外的每个类型声明,都定义了一个相等 ("=") 和不等式运算符 "/="。字符串文字的类型来自上下文,并且必须是具有字符枚举元素(例如字符串、std_ulogic_vector 等)的一维数组类型。如果没有minimal reproducible example,第 108 行错误的修复将不明显。