Verilog分配时的多次检查
我不明白为什么这段代码中有synthax错误:Verilog分配时的多次检查,verilog,system-verilog,Verilog,System Verilog,我不明白为什么这段代码中有synthax错误: mem_check_msk = (membytes[i] == 3) ? 32'h00ffffff : (membytes[i] == 2) ? (mempa[i][1:0] == 2'b00) ? endianess ? 32'hffff0000 : 32'h0000ffff : (membytes[i] == 1) ? (mempa[i][1:0] == 2'b00
mem_check_msk = (membytes[i] == 3) ? 32'h00ffffff :
(membytes[i] == 2) ? (mempa[i][1:0] == 2'b00) ? endianess ? 32'hffff0000 : 32'h0000ffff :
(membytes[i] == 1) ? (mempa[i][1:0] == 2'b00) ? endianess ? 32'hff000000 : 32'h000000ff :
(mempa[i][1:0] == 2'b01) ? endianess ? 32'h00ff0000 : 32'h0000ff00 :
(mempa[i][1:0] == 2'b10) ? endianess ? 32'h0000ff00 : 32'h00ff0000 :
(mempa[i][1:0] == 2'b11) ? endianess ? 32'h000000ff : 32'hff000000 :
32'hffffffff;
正在抱怨“;”最后。只是不知道我错在哪里正如在评论中指出的那样,有13个
?
,只有11个:
问题得到了纠正 我也不懂这个语法。为什么有两个?
在尾端的两侧?三元运算符语法是x?y:z代码>在这里看一下如何结构化嵌套的三元结构:因为有多个检查,所以首先检查mmpa[1:0]的值,然后检查是否设置了endianess。例:x?YZa:b:…我在你的代码中计算了13个?
标记,只有11个:
@EugeneSh。至少我们同意?
:)@EugeneSh的数量。是的,你说得对。我将删除我的评论