verilog中的8 x 1多路复用器,语法错误10170

verilog中的8 x 1多路复用器,语法错误10170,verilog,quartus,Verilog,Quartus,我试图在Verilog中创建一个8 x 1多路复用器。当我运行分析和合成代码时,我不断得到一个错误。这是我的密码: // 8 x 1 line multiplexer module KuchtaClayton_HW7_P6(output Y, input [2:0] S, input [7:0] I); assign Y = (S ==3’b000) ? I[0] : (S ==3’b001) ? I[1] : (S

我试图在Verilog中创建一个8 x 1多路复用器。当我运行分析和合成代码时,我不断得到一个错误。这是我的密码:

// 8 x 1 line multiplexer
module KuchtaClayton_HW7_P6(output  Y, input [2:0] S, input [7:0] I);

    assign Y = (S ==3’b000) ? I[0] :
               (S ==3’b001) ? I[1] :    
               (S ==3’b010) ? I[2] :    
               (S ==3’b011) ? I[3] : 
               (S ==3’b100) ? I[4] :
               (S ==3’b101) ? I[5] :
               (S ==3’b110) ? I[6] :
               (S ==3’b111) ? I[7] : 1’bx;
endmodule
以下是错误消息:

错误(10170):文本“–”附近KuchtaClayton_HW7_P6.v(6)处的Verilog HDL语法错误;期望“)”

有21个基本相同的错误,有些错误如下:

错误(10170):文本附近KuchtaClayton_HW7_P6.v(6)处的Verilog HDL语法错误–
错误(10170):文本附近KuchtaClayton_HW7_P6.v(6)处的Verilog HDL语法错误


我双击他们,他们把我带到每一个分配行Y 3次。我猜我在每个布尔表达式中都犯了三个错误?我在作业中做错了什么?我正在使用Quartus II作为我的程序。

我只能猜测你到底是如何在代码中使用
字符的,因为它不是那么容易输入的(即在Mac上你必须按住Shift+Option+])。无论如何,该字符是Unicode
0xE28099
,不是合法的Verilog代码。您需要使用ASCII字符
,即0x07(请参阅a)

除此之外,您的语法还可以。唯一的建议是不要在那里使用
1'bx
,因为3位最多可以代表8个数字(从0到7),因此您有一个完整的大小写,因此可以使用以下代码:

assign Y = (S == 3'd0) ? I[0] :
           (S == 3'd1) ? I[1] :
           (S == 3'd2) ? I[2] :
           (S == 3'd3) ? I[3] :
           (S == 3'd4) ? I[4] :
           (S == 3'd5) ? I[5] :
           (S == 3'd6) ? I[6] : I[7];

我只能猜测你到底是如何在你的代码中输入
字符的,因为它不是那么容易输入的(即在Mac上你必须按住Shift+Option+])。无论如何,该字符是Unicode
0xE28099
,不是合法的Verilog代码。您需要使用ASCII字符
,即0x07(请参阅a)

除此之外,您的语法还可以。唯一的建议是不要在那里使用
1'bx
,因为3位最多可以代表8个数字(从0到7),因此您有一个完整的大小写,因此可以使用以下代码:

assign Y = (S == 3'd0) ? I[0] :
           (S == 3'd1) ? I[1] :
           (S == 3'd2) ? I[2] :
           (S == 3'd3) ? I[3] :
           (S == 3'd4) ? I[4] :
           (S == 3'd5) ? I[5] :
           (S == 3'd6) ? I[6] : I[7];

同意。我猜这是一个文本编码问题,特别是因为错误消息中有一个重音字符:
靠近文本“–”?这是一个要使用的模板。所以他们一定把它放进去了。非常感谢。你是从PDF中剪切粘贴出来的吗?这几乎保证会有奇怪的角色。同意。我猜这是一个文本编码问题,特别是因为错误消息中有一个重音字符:
靠近文本“–”?这是一个要使用的模板。所以他们一定把它放进去了。非常感谢。你是从PDF中剪切粘贴出来的吗?这几乎可以保证会出现奇怪的角色。你在使用哪个模拟器(或合成工具)?你在使用哪个模拟器(或合成工具)?