2011-04-18 97 views
1

我想编译我的程序,但使用算术右移运算符时出现错误:“>>>”。下面是代码:verilog转换运算符基本错误

if (from_id_hmic[117:115]==3'b011) 
begin 
    reg_stat[rt[0]]>>>1'b1; 
end 

以下是错误:

Error: E:/Modeltech_pe_edu_10.0/examples/hmic.v(86): near ">>>": syntax error, unexpected >>> 

我有更多这样的言论,但他们都给予同样的错误。我的错误是什么?谢谢。

回答

2

您有一个不完整的Verilog语句。你需要做一个任务。只是试图进行转变是不够的,就像a + 2;是一个不完整的陈述。你可能想是这样的:

result = reg_stat[rt[0]]>>>1'b1; 

或者是:

reg_stat[rt[0]] >>>= 1'b1; 

>>>=是“二进制算术移位赋值运算符”(见IEEE标准1800年至2009年“运营商和数据类型”)。

+2

谢谢。这工作。 – Brahadeesh 2011-04-18 17:15:17